Diagramm von verteilten Lastgeneratoren in mehreren globalen Regionen, die Testtraffic durch CDN, WAF, Lastverteiler und App-Server senden.

Produktivtraffic kommt von vielen IPs und Regionen – nicht von einer einzigen Quelle.
Kurz gefasst. Lasttests von einer einzigen IP können irreführende Ergebnisse liefern, weil CDNs, WAFs, Ratenbegrenzungen und Routing-Schichten sich unter verteilt auftretendem Traffic anders verhalten. Für realistische Ergebnisse sollten Tests mehrere IPs über mehrere Regionen hinweg verwenden.

Warum ein Einzel-IP-Test gut aussieht, es aber nicht ist

Ein Lasttest mit einer einzigen IP kann auf dem Papier erfolgreich aussehen. Das Skript läuft, Dashboards füllen sich und die Latenz bleibt im Zielbereich. Das Problem ist, dass die Ergebnisse oft die Testumgebung mehr widerspiegeln als den realen Produktivtraffic.

Produktivtraffic kommt nicht von einer einzigen Adresse. Ein verbraucherorientierter Endpunkt sieht Traffic von tausenden Wohn-ISPs, Mobilfunkanbietern, Unternehmens-NATs und Rechenzentrums-Proxys. Jede Anfrage landet auf einem anderen CDN-Edge-Knoten, durchquert einen anderen Middlebox und trifft auf einen anderen Teilpool der Verbindungen. Wenn man all diese Vielfalt auf eine einzelne Quell-IP reduziert, wird jede Schicht, die sich an der Quell-Adressenschlüsselung orientiert, …Dress verhält sich auf eine Weise, die keinen realen Gegenpart hat.

Das Ergebnis sind irreführende Leistungsdaten, die das reale Produktionsverhalten nicht widerspiegeln.

Sieben spezifische Ausfallmodi von Single-IP-Lasttests

Single-IP-Lasttests können mehrere reale Verhaltensweisen verzerren oder vollständig übersehen.

1. Rate Limiter geben die falsche Zahl zurück

Moderne Rate Limiter arbeiten pro Quellkennzeichen, und das häufigste Kennzeichen ist die Quell-IP. Token-Bucket-, Fixed-Window- und Sliding-Window-Algorithmen teilen alle diese Eigenschaft. Selbst Teams, die Limits auch anhand von Auth-Token oder Benutzer-IDs festlegen, schichten fast immer zusätzlich per-IP-Limits darunter; die IP-Schicht schützt die Anwendung vor nicht authentifiziertem Missbrauch. Wenn eine große virtuelle Benutzerlast den gesamten Traffic von einer IP aus steuert, sieht der Limiter diese Last als einen einzigen Client und beginnt mit der Ablehnung von Anfragen, noch bevor die Anwendung Belastung erkennt. Die Anwendung wirkt schnell, weil der Limiter die Last absorbiert hat. In der Produktion würde die gleiche Gesamtrate von Anfragen von Tausenden verschiedenen Quell-IP-Adressen kommen und der Limiter würde sie durchlassen.

Das Spiegelbild gilt ebenfalls. Hat der Limiter ein großzügiges Budget pro IP, erreicht ein Single-IP-Test niemals das aggregierte Limit am Load Balancer. Die Anwendung wird überlastet, und der Limiter schaltet nie ein, wodurch verborgen bleibt, dass der Produktionstraffic teilweise abgesichert würde.

2. WAFs und Bot-Erkennung schlagen beim Test aus

Eine WAF, die nach plötzlichen, einheitlichen Anfrage-Mustern von einer IP sucht, macht genau das, wofür sie konzipiert wurde. Sie erkennt den Lasttest, analysiert den Traffic und drosselt, fordert heraus oder blockiert ihn. Einige Teams bemerken dies erst, wenn der Test bei einer verdächtig runden Durchsatzzahl einbricht, die sich als Schwelle der WAF herausstellt. Tests, die DDoS-Schutzpfade prüfen, benötigen aus dem gleichen Grund vielfältige Quellen – diese Abwehrmechanismen sind typischerweise getrennt von der WAF und noch abhängiger von einer Vielfalt an Quell-IP-Adressen, um realistisch aktiv zu werden.

Das Deaktivieren der WAF für den Test „behebt“ nur das Symptom und schafft ein schlimmeres Problem: Der Testpfad entspricht nicht mehr dem Produktionspfad. Traffic von vielen IPs ist der einzige Weg, um zu validieren, dass die Anwendung auch dann performant arbeitet, wenn die WAF bei Produktionsschwellen aktiviert ist.

3. CDN-Edge-Auswahl reduziert sich auf einen Knoten

CDNs leiten Anfragen an den Edge-Standort weiter, der dem Client am nächsten ist. Von einer IP aus landet der Traffic an einem Edge-POP. Der Cache füllt sich dort, alle nachfolgenden Anfragen treffen auf warmes Storage, und der Test zeigt die Latenz eines Cache-Treffers für den gesamten Lauf an. Währenddessen wird die lange Traufe kalter Edges in anderen Regionen nie genutzt. Wer sich Anleitung zum Lasttesten von CDN-vorstößenden Seiten durchliest, se…es wird darauf hingewiesen: Das Cache-Verhalten ist eine Funktion der Quellverteilung, nicht nur der Anforderungsrate.

Der umgekehrte Fall ist ebenfalls wichtig. Das Cache-Miss-Origin-Shielding-Verhalten, bei dem ein CDN gleichzeitige Fehlzugriffe zu einem einzigen Origin-Fetch zusammenfasst, ist von einer einzelnen IP nicht sichtbar. Sie können den Origin-Schutz nicht validieren, ohne Verkehr, den das CDN als unabhängig behandelt.

4. Anycast- und GeoDNS-Routingentscheidungen werden nie ausgelöst

Anycast-IPs leiten Pakete an das topologisch nächstgelegene Rechenzentrum weiter. GeoDNS löst einen Hostnamen je nach Standort des Resolvers auf unterschiedliche IPs auf. Beide Entscheidungen erfolgen, bevor die Anforderung Ihre Anwendung erreicht. Von einer einzigen Testquelle aus sehen Sie immer nur das Rechenzentrum, auf dem Ihr Testrunner landet. Routing über Regionen hinweg, Failover-Pfade und Latenz zu entfernten Regionen bleiben ungetestet.

Dies kann eine teure blinde Stelle sein. Der Single-Region-Test besteht, die Anwendung wird global ausgerollt, und Benutzer in Regionen, die der Test nie berührt hat, erleben eine Latenz, die in den Dashboards nie angezeigt wurde. Geo-verteiltes Lasttesting existiert genau, um diese Lücke zu schließen.

5. Wiederverwendung von Connection-Pools und HTTP/2-Zusammenfassung verzerren den Durchsatz

HTTP/2- und HTTP/3-Clients öffnen eine Verbindung pro Origin und multiplexen Anfragen darüber. Von einer einzigen IP mit einem einzelnen Client sieht die Anwendung eine einzige langlebige Verbindung, die tausende Streams trägt. Die Pro-Verbindung-Abrechnung des Servers, Flusskontrollfenster und das Verhalten bei Head-of-Line-Blocking spiegeln diese eine Verbindung wider. In der Produktion existieren Tausende von Verbindungen, jede mit eigenem Flusskontrollfenster, die unabhängig zur Scheduler-Belastung beitragen.

Der gleiche Effekt zeigt sich am Load Balancer. Pro-Verbindung-Metriken, Idle-Timeout-Erfassung und der Ablauf eines sanften Neustarts verhalten sich unter einer dicken Verbindung anders als unter Tausenden dünner Verbindungen. Sie sehen die Verbindungsanzahlverteilung in der Produktion nur, wenn Sie die Last von vielen verschiedenen Clients über viele IPs erzeugen; ein Test, der diese Verteilung nicht erzeugt, kann keine dieser Verhaltensweisen validieren.

6. Erschöpfung des temporären Portbereichs und Source-NAT am Generator

Der Linux-Ephemeral-Portbereich gibt einer einzelnen Quell-IP nur Zehntausende von Ports pro Ziel-Tupel. Ein Lastgenerator, der hohe Verbindungsraten von einer IP aus erzeugt, erschöpft die Ports innerhalb von Sekunden, und der Test erreicht ein Plateau am Testsystem statt am zu testenden System. Cloud-Umgebungen verschlimmern das: Eine EC2-Instanz hinter einem NAT-Gateway teilt sich mit allem anderen, das über dasselbe Gateway ausgeht, einen noch kleineren Pool. Praktiker, die dies erlebt haben, kennen es als die “die Last kann nicht höher gehen”-Grenze, die in langen Abhandlungen über TCP-Port-Erschöpfung bei Single-IP-Tests dokumentiert ist.

Die Lösung ist nicht nur leistungsfähigere Generatoren. Es ist mehr Lastgeneratoren mit ihren eigenen Ausgangs-IP-Adressen, sodass der Port-Pool repliziert statt geteilt wird.

7. Beobachtbarkeit kollabiert zu einem einzigen Bucket

Viele Produktions-Dashboards ordnen den Datenverkehr nach Quell-IP, ASN oder geografischer Region ein. Ein Test mit einer einzelnen IP erzeugt nur einen Bucket, und jeder Alarm, Perzentil und Sättigungsmetrik fällt in diesen einen Bucket zusammen. Ingenieure, die den Test überprüfen, können nicht erkennen, ob die von ihnen beobachtete Latenz über die Regionen hinweg einheitlich ist oder sich auf eine konzentriert. Sie können auch nicht die Aufschlüsselung reproduzieren, die sie bei einem realen Vorfall verwenden, bei dem der erste Instinkt „zeige mir p99 nach Region“ oder „zeige mir Fehlerquote nach ASN“ lautet. Die Behandlung von Lasttest-Metriken wie Produktionsmetriken erfordert Vielfalt bei den Eingabequellen.

Die Cloud-Egress-Falle

Die meisten Teams, die versuchen, Lasttests auf mehrere Maschinen zu verteilen, betreiben diese Maschinen in einem Cloud-Konto, in einer Region, hinter einem NAT-Gateway. Das Ergebnis ist technisch mehr-IP, praktisch aber eine einzelne Quelle. Jedes Paket verlässt das Netzwerk mit einer Quell-IP aus dem bekannten ASN desselben Cloud-Anbieters. WAFs, Bot-Erkennungsanbieter und Edge-Anbieter führen Rufdaten zu Cloud-Egress-Bereichen; viele behandeln den Verkehr aus diesen Bereichen standardmäßig mit erhöhter Aufmerksamkeit.

Das ist in zwei Richtungen wichtig. Erstens sieht die Anwendung den Test als Rechenzentrumsdatenverkehr, der bei jedem CDN und vielen Anycast-Einsätzen anders geroutet wird als Wohnzugangsverkehr. Zweitens kommen Ihre Tests aus demselben Netzwerknachbarschaft wie konkurrierende Workloads, was die Basislatenz verrauscht und die Reproduzierbarkeit verschlechtert. Generische AWS-Load-Testing-Setups können Skalierung adressieren, aber keine Quellvielfalt.

Realismus erfordert, dass das Lastinjektionsnetzwerk mehr als eine Cloud, mehrere Regionen und idealerweise eine Mischung aus Rechenzentrums- und Wohnnetz-Ausstiegen umfasst (zum Beispiel die Kombination von zwei Cloud-Anbietern mit einem Wohn- oder Mobilfunkanbieter-Ausgangsnetzwerk), damit die IP-/Geo-Mischung, die Ihre Anwendung während des Tests sieht, der ähnelt, die sie in der Produktion sieht.

Seitenvergleich: Ein Single-IP-Test, bei dem der Datenverkehr auf eine CDN-Edge zusammenfällt, versus ein verteiltes IP-Test, bei dem sich der Datenverkehr über mehrere regionale CDN-Edges verteilt, bevor er die Anwendung erreicht
Traffic-Form bei Single-IP versus verteilter IP. Das rechts gezeigte Muster ist das, wofür Ihr CDN, WAF und Lastverteiler ausgelegt wurden.

Wie eine realistische IP-Verteilung tatsächlich aussieht

„Viele IPs“ sind kein Ziel. Das Ziel ist eine Verteilung, die der Produktion entspricht. Drei Eigenschaften sind wichtig.

Geografische Verteilung. Wenn 30 Prozent der Nutzer in EMEA, 30 Prozent in APAC und 40 Prozent in Amerika sind, muss der Test ungefähr in diesen Anteilen durchgeführt werden. Dies ist die Grundlage für realistische Anycast-Routing- und CDN-Edge-Auswahl. Es zeigt auch die langsamen Ausreißer auf, die bei Tests in einer einzelnen Region verborgen bleiben.

Netzwerkvielfalt. Die Mischung aus privaten ISPs, mobilen Netzbetreibern und Rechenzentrumsnetzen setzt die Anwendung den gesamten Bereich von MTU-, Paketverlust- und Middlebox-Verhalten aus, die in der Produktion auftreten. Ein Test, der ausschließlich in Rechenzentrumsnetzen durchgeführt wird, übersieht, wie mobile Netze TLS neu aushandeln oder wie Carrier-Grade NAT Verbindungen bündelt.

Pro-IP-Volumen, das einem echten Nutzer ähnelt. Eine realistische IP generiert nicht tausend Anfragen pro Sekunde. Sie erzeugt die Anfragerate von wenigen echten Nutzern hinter einem NAT sowie gelegentlich die von einem Power-User in Chargen. Virtuelle Nutzersimulation, die das Pro-IP-Volumen respektiert, hält die Ratenbegrenzung und WAF-Interaktionen auf der realistischen Seite.

Einzel-IP vs Verteilte IP: Wann welche richtig ist

Testzweck Einzel-IP akzeptabel? Warum
Komponenten-Mikrobenchmark eines Backend-Services Ja Kein Internetpfad, keine Pro-IP-Ratenbegrenzungen, kein CDN. Die Komponente ist das zu testende System.
Smoke-Test einer Bereitstellung Ja Es wird die Korrektheit überprüft, nicht die Leistung.
Kapazitätsvalidierung eines internetgerechten Endpunkts Nein (in fast allen Fällen) Ratenbegrenzung, WAF, CDN und Anycast verzerren das Ergebnis.
Pre-Launch Skalierbarkeitstest Nein Effekte wie Verbindungs-Pooling, Port-Erschöpfung und Edge-Auswahl zerstören das Modell.
Validierung von Pro-IP-Ratenbegrenzungsschwellenwerten Nein Definitiongemäß sind viele Quell-IP-Adressen erforderlich, um die Schwelle zu testen.
Feinabstimmung der Gesundheitsprüfung von Load-Balancern Manchmal Nur interne Load-Balancer. Öffentliche Load-Balancer benötigen diverse Quellen.
Validierung von Geo-Routing und Failover Nein Die Entscheidungen erfolgen nur, wenn sich der Resolver und die Quell-IP ändern.

Echte Szenarien

Szenario 1: Ein Ecommerce-Checkout, der bis zum Black Friday „besteht“

Betrachten wir ein häufiges Muster. Ein Bekleidungshändler führt einen Lasttest mit vielen virtuellen Nutzern aus einer einzigen Cloud-Region durch. Die p95-Checkout-Latenz liegt komfortabel innerhalb des SLO. Am Black Friday springt der p95-Wert in den mehrsekündigen Bereich, und die Warenkorbabbrüche steigen.

Zwei Dinge treten in dieser Art von Nachanalyse nach dem Vorfall häufig auf. Das CDN lieferte den Großteil des Testverkehrs von einem POPdas während des gesamten Laufs warm blieb. In der Produktion verteilte sich der Traffic über viele POPs, von denen einige während des Peaks kaltstarteten. Das zweite Problem ist in der Regel das pro-IP-Rate-Limit eines Downstream-Dienstes. Der Test erreichte die Grenze für eine IP sofort und blieb während des gesamten Laufs darunter, was einen unbegrenzten Wachstumspfad im zugrunde liegenden Cache verdeckte. Concurrent HTTP versus concurrent browsers-Coverage erklärt, warum die Form der Auslastung genauso wichtig ist wie die Anzahl der Benutzer.

Szenario 2: Eine Fintech-API, die ihre Sicherheitsprüfung nicht besteht

Betrachten Sie ein Payments-API-Team, das seinen Authorisierungs-Endpunkt von einer kleinen Gruppe von Cloud-Testläufern aus Lasttests unterzieht. Der Endpunkt hält die Ziel-RPS mit vorhersehbarer Latenz. Wochen später trifft eine externe Sicherheitsprüfung denselben Endpunkt mit einem verteilten Quellenmuster und löst eine „anomale Fan-Out“-Regel auf dem WAF aus. Der Durchsatz bricht ein und die Prüfprotokolle zeigen blockierende Pausen, die der Lasttest nie anzeigte.

Das Team hatte die Anwendung über das WAF getestet, jedoch nie mit einem Traffic-Muster, das das WAF als verdächtig eingestuft hätte. Die Prüfung war das erste Mal, dass das WAF tatsächlich aktiv wurde. Der Wechsel zu einem Multi-IP-, Multi-ASN-Lasttest reproduziert die Verlangsamung im Vorproduktionsumfeld, wo die Regel vor dem Start feinjustiert werden kann. Dies ist auch der Ausfallmodus hinter vielen der Empfehlungen zu warum traditionelle HTTP-Lasttests für moderne Stacks nicht ausreichen.

Szenario 3: Eine SaaS-App mit einer stillen Anycast-Fehlkonfiguration

Betrachten Sie ein B2B-SaaS-Unternehmen, das eine öffentliche API hinter einen Anycast-Loadbalancer verschiebt und die standardmäßige Checkliste zur Lasttestvorbereitung durchführt. Tests aus einer Region verlaufen glatt. Nach dem Launch melden Kunden aus einer entfernten Region eine mittlere Latenz, die eine Größenordnung höher ist als erwartet. Die Anycast-Ankündigung stellte sich als falsch konfiguriert heraus, und der Traffic aus dieser Region wurde zu einem weit entfernten POP statt zum nächstgelegenen geleitet. Kein Einzelregionstest hätte dies erkennen können, da die Fehlkonfiguration nur relevant war, wenn der Resolver außerhalb der Test-Quellregion lag.

Dies ist der kanonische Fall für geo-verteiltes Testen. Die Korrektheit der Routing-Schicht ist von einer einzigen Quelle aus nicht sichtbar.

Wie LoadView Multi-IP-Lasttests handhabt

LoadView wurde um dieses Problem herum gebaut. Das geo-verteilte Last-Injektionsnetzwerk der Plattform erstreckt sich über Dutzende von Standorten in Nordamerika, EMEA, APAC und Südamerika. Jeder Standort ist eine separate Cloud-Region mit eigenem Egress-IP-Bereich, sodass bei einem Test, der über alle läuft, die Quellverteilung ad die Zielanwendung spiegelt die geografische und netzwerkseitige Struktur echter Benutzer wider und nicht nur einen Cluster von Cloud-Ausgangsadressen.

Zwei Designentscheidungen sind für die oben genannten Fehlerarten wichtig. Erstens führt LoadView Web-Anwendungslasttests in echten Browsern durch, sodass Verbindungsanzahlen, HTTP/2-Koaleszenzverhalten und die pro Verbindung erfolgende Abrechnung auf dem Server wie bei echten Benutzern aussehen und nicht wie bei einem reduzierten Protokoll-Client. Zweitens werden die Lastinjektoren cloudseitig verwaltet, was bedeutet, dass das Team kein Testgerüst bereitstellen muss, kein NAT-Gateway-Portpool betreut werden muss und keine Versuchung besteht, alle Generatoren in einer Region laufen zu lassen, nur weil das Budget dies erlaubt.

Die Kombination ist wichtiger als die Einzelteile. Echte Browser von einer IP würden immer noch die oben beschriebenen Rate-Limits und WAF-Verzerrungen auslösen. Viele IPs, die nur Protokoll-Clients ausführen, würden das Verhalten des Verbindungs-Pools und von HTTP/2 weiterhin falsch darstellen. Echte Browser, die Lasttests von mehreren IP-Adressen aus vielen Regionen durchführen, reproduzieren sowohl die Netzwerktopologie als auch den Clienttyp, wie er in der Produktion vorkommt.

Ein Hinweis, um die Erwartungen richtig zu setzen: Das geografisch verteilte Netzwerk von LoadView basiert auf Cloud-Regionen, was eine breite geografische und ASN-Verteilung ermöglicht, aber nicht standardmäßig auf Wohn- oder Mobilfunkanbieter-Ausgangsadressen zugreift. Für Arbeitslasten, bei denen ein bedeutender Anteil des Produktionstraffics von diesen Netzwerken stammt (z. B. mobile lastige Verbraucher-Apps), ist das richtige Vorgehen, LoadViews regionale Cloud-Injektoren mit einer Wohn- oder Carrier-Quelle zu kombinieren, die Sie separat steuern. Der frühere Abschnitt zur realistischen IP-Verteilung behandelt die Netzwerkintegration als eine Eigenschaft des Testplans und nicht als ein einzelnes Werkzeug.

Möchten Sie sehen, wie Ihre Anwendung unter Traffic aussieht, der der Produktquellenverteilung entspricht? Buchen Sie noch heute eine LoadView-Demo!

Implementierung-Checkliste

Vor dem nächsten wichtigen Test gehen Sie die folgenden Punkte durch. Der erste Schritt verknüpft diese Checkliste mit der oben genannten Diskussion zur Quellverteilung – die Produktionsstruktur, die Sie dort ermitteln, ist das Ziel, an dem alle weiteren Schritte ausgerichtet sind.

Ermitteln Sie die Produktionsquellverteilung. Ziehen Sie eine Woche Protokolle heran und gruppieren Sie Anfragen nach Region, ASN und IP-Präfix-Dichte. Ein Einzeiler wie awk '{print $1}' access.log | sort -u | wc -l liefert Ihnen eine Anzahl eindeutiger IPs aus einem NGINX- oder Apache-Combined-Log; leiten Sie die Daten durch eine GeoIP/ASN-Abfrage, um die regionalen und ASN-Schnitte zu erhalten. Die Form dieser Verteilung ist das Ziel, das Ihr Test nachbilden soll. Wenn Sie bereits Daten zum gleichzeitigen Benutzer-Test besitzen, verwenden Sie diese als Basis.

Identifizieren Sie die pro-IP-Grenzen in Ihrem Stack. Rate limiters an der Grenze, dem API-Gateway, der Anwendung und allen Drittanbieter-APIs. Beachten Sie das Budget bei jedem. Jeder Test, der das niedrigste Budget bei mindestens einer IP nicht überschreitet, validiert diese Grenze nicht.

Wählen Sie Injektionsregionen, die dem Produktionsgewicht entsprechen. Wenn 60 Prozent des Verkehrs aus Nordamerika stammen, gehören 60 Prozent der Generatoren dorthin. Rotieren Sie nicht zu stark, um „alle Regionen gleich zu testen“, wenn die Produktion unausgewogen ist.

Bestätigen Sie die Vielfalt der Egress-ASNs. Wenn jeder Generator in einer Cloud ist, hat der Test immer noch das Cloud-Egress-Problem. Mischen Sie mindestens Regionen; besser ist es, Anbieter zu mischen (zum Beispiel zwei Cloud-Anbieter mit einem Ausgangsnetzwerk eines Wohn- oder Mobilfunkanbieters zu kombinieren).

Segmentieren Sie den Bericht nach Quelle. Latenz, Fehlerrate und Durchsatz sollten jeweils nach Region und ASN aufgeschlüsselt werden. Wenn die Segmentierung auf einen einzigen Bereich zusammenschrumpft, war der Test effektiv ein Single-Source-Test.

Reproduzieren Sie ein bekanntes Auslösen einer WAF-Regel. Führen Sie einen kleinen Test durch, der eine WAF-Regel auslöst, die Sie verstehen, und bestätigen Sie, dass sie ausgelöst wird. Wenn nicht, sieht Ihr WAF den Testverkehr nicht ähnlich wie den Produktionsverkehr, und die restlichen Ergebnisse sind fragwürdig.

FAQ

Warum liefern Lasttests von einer einzelnen IP falsche Zahlen?

Produktionsverkehr kommt von vielen IPs über viele Netzwerke. Rate Limiter, WAFs, CDN-Kanten, Anycast-Router und Verbindungspools verhalten sich alle unterschiedlich, wenn Verkehr von einer einzigen Quelle stammt. Ein Single-IP-Test belastet Pfade, die reale Benutzer niemals benutzen, und überspringt Pfade, die reale Benutzer immer benutzen, sodass die Latenz- und Durchsatzwerte eher die Testumgebung als das System widerspiegeln.

Ist IP-Spoofing in JMeter dasselbe wie Multi-IP-Lasttests?

Nicht wirklich. JMeter-IP-Spoofing rotiert die Quell-IP auf Betriebssystemebene, aber die Pakete verlassen weiterhin eine Maschine mit einer einzigen Standardroute, einem ASN und einem geografischen Standort. CDNs, Anycast-Router und viele WAFs orientieren sich am Netzwerkpfad und ASN, nicht nur an der Layer-3-Quelladresse. Echter Multi-IP-Lasttest verteilt Generatoren über separate Netzwerke und Regionen.

Wie viele IPs brauche ich für einen realistischen Lasttest?

Es gibt keine einzelne Zahl. Das richtige Ziel ist genügend IP- und geografische Vielfalt, sodass keine einzelne Quell-IP das Pro-IP-Rate-Limit überschreitet, das Sie validieren möchten, und die CDN-Kante sowie Verteilerverteilung ungefähr Ihrem Produktionsverkehrsmix entspricht. Für die meisten verbraucherorientierten Anwendungen bedeutet das Dutzende bis Hunderte von verschiedenen Quell-IPs über mehrere Regionen.

Wann ist Single-IP-Lasttesting akzeptabel?

Single-IP-Tests sind in Ordnung für Komponentenprüfungen: ein Backend-Dienst hinter einem internen Load Balancer ohne Pro-IP-Limits, ein Datenbank-Treiber-Benchmark oder ein Smoke-Test, bei dem nur die korrekte Antwort zählt. In fast allen Fällen reicht es nicht für eine End-to-End-Leistungsvalidierung eines internetfähigen Endpunkts.

Bedeutet NAT eine einzelne IP können viele Benutzer repräsentieren?

NAT und CGNAT komprimieren viele reale Benutzer hinter einer einzigen Adresse, sodass die per-IP-Rate-Limits in der Produktion bereits eine gewisse Clusterbildung berücksichtigen. Das Problem bei Single-IP-Tests besteht nicht darin, dass eine IP nicht viele Benutzer repräsentieren kann, sondern dass eine IP nicht die Verteilung der Benutzer abbilden kann, die Sie tatsächlich haben. Echter Traffic erstreckt sich über tausende NAT-Ausgänge, nicht nur einen.

Planen Sie einen Lasttest, der Zahlen liefert, die Sie verteidigen können

Wenn der Test-Traffic nicht der Quell-Form der Produktion entspricht, beschreiben die Testergebnisse nicht die Produktion. Verteiltes IP-Lasttesten über viele Regionen ist kein nettes Extra für Kapazitätsplanung, Sicherheitsvalidierung oder Genauigkeit des Edge-Routings. Verteiltes Lasttesten hilft sicherzustellen, dass Ihre Tests widerspiegeln, wie reale Benutzer Ihre Anwendung erreichen. Beginnen Sie mit der obigen Checkliste, unterteilen Sie jeden Bericht nach Quelle und validieren Sie Ihre Annahmen über das Verhalten von WAF und Rate-Limiting vor dem nächsten Launch und nicht währenddessen.