English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

Gast
1 / ?

L = λ × W

Das nützlichste Gleichung in der Kapazitätsplanung

Für jede stabile Warteschlange, unabhängig von ihrer internen Struktur: L = λ × W, wo:

- L = durchschnittliche Anzahl von Elementen im System (in Bearbeitung oder wartend)

- λ (lambda) = durchschnittliche Ankunftsrate (Elemente pro Zeiteinheit)

- W = durchschnittliche Zeit, die jedes Element im System verbringt

Die geometrische Lesart: Zeichne λ auf einer Achse und W auf der anderen. Das Produkt L ist die Fläche des daraus entstandenen Rechtecks. Die Kapazitätsplanung findet sich innerhalb dieses Rechtecks.

Warum es wichtig ist: Zwei der drei Größen bestimmen die dritte. Messen Sie Durchsatz und Latenz, wissen Sie die Auslastung. Messen Sie Auslastung und Durchsatz, wissen Sie die Latenz. Das Gesetz ist robust: Es gilt für Web-Anforderungen, Restauranttische, Supermarkt-Queues und CPU-Pipelines ohne Änderung.

Drei konkrete Beispiele:

- Eine Webdienst verarbeitet 200 Anforderungen pro Sekunde mit einer durchschnittlichen Latenz von 50 ms (0,05 s). L = 200 × 0,05 = 10 im Gange.

- Eine Kaffeebar bedient 60 Kunden pro Stunde mit einer durchschnittlichen Verweildauer von 15 Minuten (0,25 h). L = 60 × 0,25 = 15 Kunden drinnen.

- Eine Backend-Pool verarbeitet 1500 Anforderungen pro Sekunde mit einer durchschnittlichen Latenz von 200 ms (0,2 s). L = 1500 × 0,2 = 300 im Gange.

Auswirkungen auf die Größenwahl: Die Anzahl der Arbeiter / Threads / Verbindungen einer Schicht muss mindestens L betragen, um mitzuhalten. Weniger führt zu Wachstum der Warteschlange.

Little's Gesetz als Fläche: λ auf x, W auf y, L = Fläche

Ihr API-Schicht verarbeitet 1.200 Anforderungen pro Sekunde mit einer durchschnittlichen Latenz von 80 ms. Anwenden Sie Little's Gesetz, um L zu berechnen. Erkläre dann, was sich ändert (a) wenn die Verkehrsmenge sich verdoppelt und 2.400 Anforderungen pro Sekunde beträgt, mit unveränderte Latenz, und (b) wenn die Verkehrsmenge bei 1.200 bleibt, aber die Latenz auf 160 ms steigt. Welches Szenario erzeugt eine größere L und was bedeutet das operativ?

Warum die Latenz explosionsartig ansteigt, wenn die Auslastung 80% übersteigt

Die wichtigste Kurve in den Betriebsabläufen

Plotnutzung auf der x-Achse (0% bis 100%) & durchschnittliche Wartezeit auf der y-Achse. Die Form ist eine der wichtigsten Kurven in der Kapazitätsplanung.

Das M/M/1-Warteschlangenmodell: für ein System mit Poisson-Beiträgen (zufällig) & exponentielle Servicezeiten (zufällig), durchschnittliche Wartezeit:

W_q = ρ / (μ × (1 - ρ))

wo ρ die Auslastung (0 bis 1) & μ die Serviceleistung ist.

Die Form der Kurve:

- Bei ρ = 0,5 (50% Auslastung) ist die Wartezeit gering (1 Servicezeit).

- Bei ρ = 0,7 (70% Auslastung) beträgt die Wartezeit etwa 2,3 Servicezeiten.

- Bei ρ = 0,8 (80% Auslastung) beträgt die Wartezeit etwa 4 Servicezeiten.

- Bei ρ = 0,9 (90% Auslastung) beträgt die Wartezeit etwa 9 Servicezeiten.

- Bei ρ = 0,95 (95% Auslastung) beträgt die Wartezeit etwa 19 Servicezeiten.

- Bei ρ = 1,0 (100% Auslastung) beträgt die Wartezeit unendlich.

Das Knie: um die 80% Auslastung herum biegt die Kurve scharf ab. Unter dem Knie ist die Kapazität angenehm; über dem steigt die Latenz schneller als die Auslastung.

Praktische Lesart: Ziel 70% Auslastung für den Zustand des Gleichgewichts, nie 100%. Die 30% 'Freiraum' sind kein Verschwendung; es ist der Preis für begrenzte Latenz.

Warteschlangenkurve mit Knie bei 80% Auslastung

Größenanpassung über das Knie

Zwei Szenarien:

Szenario A: 10 Replikate, die 60% CPU nutzen. Latenz p99 = 100 ms.

Szenario B: gleiche Flotte, die aufgrund des Verkehrsanstiegs 90% CPU nutzt. p99 = 600 ms.

Gleiche Flotte, gleicher Code, nur die Auslastung wurde geändert.

Erkläre, warum die Latenz im Szenario B 6-fach schlechter ist, obwohl nur eine 1,5-fache Auslastungssteigerung erfolgt ist, unter Verwendung der geometrischen Form der Warteschlangenkurve. Dann vorschlagen: bei welcher Auslastung sollte die Mannschaft Kapazität hinzufügen und warum dieser Schwellenwert anstelle des Wartens einer tatsächlichen SLO-Verletzung?

Größe und Auslöser zusammen

Synthese

Sie können nun Little's Gesetz als Rechteck anwenden, die Warteschlange lesen und deren Knietiefe, und beide mit Kapazitätsentscheidungen verbinden.

Wenden Sie beide an.

Ein Backend-Tier verarbeitet 2.000 Anforderungen pro Sekunde mit einer durchschnittlichen Latenz von 50 ms pro Replika mit einer Kapazität von 80 Anforderungen pro Sekunde und 70% CPU-Auslastung. Surge-Faktor 2x; Sie möchten 3 gleichzeitige Replika-Fehler überleben.

Berechnen Sie: (1) L unter Basisbedingungen mit Little's Gesetz; (2) Anzahl der Replikate mit der Lektionformel (Peak × Surge / pro-Replikate) + Freiraum; (3) bei welcher beobachteten Auslastung über der Flotte sollte Autoscaling ausgelöst werden und rechtfertigen Sie den Schwellenwert unter Verwendung der Warteschlangenkurve.

Kommilitonennotizen

Kommilitonennotizen

Diese Geometrie-Lektion stellt die Staatlose horizontale Skalierung-Hauptlektion quantitativ als Geometrie dar.

Die nächste Begleitlektion, geometry_of_ingress_egress_separation, stellt die Netzwerk-Grenze als bipartites Graph mit einem Schnittpunkt dar, den die Trennung entfernt.

Gut gemacht.