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

un

gast
1 / ?
terug naar lessen

L = λ × W

De meest nuttige vergelijking in capaciteitsplanning

Voor elke stabiele wachtrij, ongeacht de interne structuur: L = λ × W, waarbij:

- L = gemiddeld aantal items in het systeem (in behandeling of wachtend)

- λ (lambda) = gemiddelde aankomsttempo (items per tijdseenheid)

- W = gemiddelde tijd die elk item in het systeem doorbrengt

De geometrische interpretatie: plot λ op één as en W op de andere. Het product L is het oppervlak van de rechthoek die ze vormen. Capaciteitsplanning zit binnenin deze rechthoek.

Waarom het belangrijk is: willekeurige twee van de drie grootheden bepalen de derde. Meet doorvoer en latente tijd, dan weet je de bezetting. Meet bezetting en doorvoer, dan weet je de latente tijd. De wet is robuust: deze geldt voor webverzoeken, restauranttafels, supermarktwachtrijen en CPU-pipelines zonder aanpassingen.

Drie concrete voorbeelden:

- Een webdienst verwerkt 200 verzoeken/s met een gemiddelde latente tijd van 50 ms (0,05 s). L = 200 × 0,05 = 10 in behandeling.

- Een koffiezaak bedient 60 klanten/uur met een gemiddelde verblijfstijd van 15 minuten (0,25 u). L = 60 × 0,25 = 15 klanten binnen.

- Een backend-pool verwerkt 1500 verzoeken/s met een gemiddelde latente tijd van 200 ms (0,2 s). L = 1500 × 0,2 = 300 in behandeling.

Implicatie voor dimensionering: het aantal workers / threads / verbindingen van een laag moet minimaal L zijn om bij te kunnen. Minder betekent groei van de wachtrij.

Little's Law as area: λ on x, W on y, L = area

Je API-laag verwerkt 1.200 req/s met een gemiddelde latentie van 80 ms. Pas de Wet van Little toe om L te berekenen. Leg daarna uit wat er verandert (a) als het verkeer verdubbelt naar 2.400 req/s met ongewijzigde latentie, en (b) als het verkeer op 1.200 blijft, maar de latentie stijgt naar 160 ms. Welk scenario levert een grotere L op, en wat betekent dat operationeel?

Waarom de latensie explodeert boven 80% benutting

De belangrijkste curve in de operatie

Plot de benutting op de x-as (0% tot 100%) en de gemiddelde wachttijd op de y-as. De vorm is een van de meest bepalende curves in capaciteitsplanning.

Het M/M/1-wachtrijmodel: voor een systeem met Poisson-aankomsten (willekeurig) en exponentiële bedieningstijden (willekeurig), is de gemiddelde wachttijd:

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

waarbij ρ de benutting is (0 tot 1) en μ het bedieningsritme.

De vorm van de curve:

- Bij ρ = 0,5 (50% benutting) is de wachttijd klein (1 bedieningstijd).

- Bij ρ = 0,7 (70% benutting) is de wachttijd ongeveer 2,3 servicetijden.

- Bij ρ = 0,8 (80% benutting) is de wachttijd ongeveer 4 servicetijden.

- Bij ρ = 0,9 (90% benutting) is de wachttijd ongeveer 9 servicetijden.

- Bij ρ = 0,95 (95% benutting) is de wachttijd ongeveer 19 servicetijden.

- Bij ρ = 1,0 (100% benutting) is de wachttijd oneindig.

De knik: rond de 80% benutting buigt de curve scherp af. Onder de knik is de capaciteit comfortabel; daarboven stijgt de latentie sneller dan de benutting.

Praktische interpretatie: streef naar 70% benutting voor de stationaire toestand, nooit 100%. De 30% 'ruimte' is geen verspilling; het is de prijs voor een beperkte latentie.

Wachtrijcurve met knik bij 80% benutting

Dimensionering over de knie

Twee scenario's:

Scenario A: 10 replica's draaien op 60% CPU. Latency p99 = 100 ms.

Scenario B: dezelfde vloot draait op 90% CPU door verkeerstoename. p99 = 600 ms.

Zelfde vloot, zelfde code, alleen de benutting is veranderd.

Leg uit waarom de latency in scenario B 6x slechter is, ondanks slechts een 1,5x toename in benutting, door gebruik te maken van de geometrische vorm van de wachtrijcurve. Stel daarna voor: bij welke benutting zou het team capaciteit moeten toevoegen, en waarom die drempelwaarde in plaats van wachten op een daadwerkelijke SLO-schending?

Grootte & Trigger Samen

Synthese

Je kunt nu de Wet van Little toepassen als een rechthoek, de wachtrijcurve en het knikpunt daarvan lezen, en beide verbinden met capaciteitsbeslissingen.

Pas beide toe.

Een backendlaag verwerkt 2.000 req/s met een gemiddelde latentie van 50 ms per replica, met een capaciteit van 80 req/s bij 70% CPU. De piekfactor is 2x; je wilt overleven bij 3 gelijktijdige replica-fouten.

Bereken: (1) L met de Wet van Little op het basisscenario; (2) het aantal replicas met de formule uit de les (piek × piekfactor / per replica) + headroom; (3) bij welk waargenomen gebruik over de hele vloot moet autoscaling worden ingeschakeld, & onderbouw de drempelwaarde met behulp van de wachtrijcurve.

Begeleidend Notities

Begeleidend Notities

Deze les over geometrie herformuleert de hoofdlees Stateless Horizontal Scaling als kwantitatieve geometrie.

De volgende bijles, geometry_of_ingress_egress_separation, herformuleert de splitsing van de netwerkgrens als een tweetijdige graaf met een knoop die de splitsing verwijdert.

Goed gedaan.