De Flessenhalsnode Wordt Geïdentificeerd Voordat Het Verkeer Aankomt
Betweenness Centrality
Voor elk paar knopen in een grafiek is er een kortste pad tussen hen. Betweenness centraliteit van een knoop N = het deel van alle kortste paden dat door N heen gaat.
Een knoop met een hoge betweenness zit op het pad tussen veel andere paren. Als het vertraging ondervindt, vertragen veel stroompjes. Als het faalt, breken veel stroompjes.
Architectonische lezing: hoge-betweenness knopen zijn degenen waar elke architectuurbeoordeling extra aandacht aan moet besteden. Ze zijn flessenhalsen, SPOFs & capaciteitskritische componenten in een. Ze hebben een neiging om:
- De DNS-provider (tussen elk client & elk dienst)
- De ingress proxy (tussen elk client & elk achterste)
- De database primaire (tussen elk achterste & elk gelezen)
- De authenticatie-service (tussen elk gebruiker & elk geautoriseerd actie)
Detectie zonder meting: grafiektopologie alleen identificeert hoge-betweenness knopen. Je hebt geen verkeersgegevens nodig; je hebt de architectuurdiagram nodig. Een knoop die tussen veel paren van anderen zit, is structureel kritiek.
Operationele gevolgen: hoge-betweenness knopen verdienen onevenredige investeringen in (1) capaciteitsvoorsprong, (2) redundance, (3) waarnemingen & (4) incidentenresponsplannen.
De Kleinste Snede Sneedt De Kleinste Stukje
Min-Cut Theorem in Plain Terms
De min-cut tussen twee knopen in een grafiek = de kleinste aantal randen (of knopen) die je moet verwijderen om ze te disconnecten.
Operationele leeswijze: de min-cut beperkt het ergste effect van een uitval. Als de min-cut tussen 'clients' & 'database' 1 rand (één proxy) is, dan verbindt het verliezen van die rand alle clients van de database. Als de min-cut 5 is, heb je 5 componenten tegelijkertijd kwijt te raken om geheel te ontsluiten; pech, maar gebonden.
Ontwerpen voor uitvalgebied: verhoog de min-cut op elke belangrijke grens. Meerdere proxies; meerdere cache-nodes; meerdere netwerkpaden tussen DC's. Elk toevoeging verhoogt de min-cut met 1.
Het bulkheadpatroon in grafische termen: verdeel resources in aparte sub-graphs die geen min-cut met elkaar delen. Een fout binnen een sub-graph kan niet naar de andere overgaan omdat de randen niet bestaan.
Diameter Zet De Afstand Van Foutenbeperking
Grafiek-diameter = de langste kortste weg tussen twee knopen.
Foutenverspreiding: wanneer een knoop faalt & de stroom terugprobeert, raken ze de opdrachtgevers op tot de diameter-afstand verderop. Een diameter-3 systeem (client -> proxy -> backend -> DB) betekent dat een DB-fout 3 opdrachtgevende lagen in een herstelstorm beïnvloedt.
Implicatie: kortere diameter = snellere foutbeheersing maar ook meer concentratie van knopen. Elk ontwerp heeft zijn compromis.
Bereken Min-Cut Voor Een Echt Archief
Een architectuur: 1 DNS, 1 CDN, 3 reverse proxies, 12 backend replica's, 1 DB primaire.
Foutmodusaudit Met Grafische Metrieken
Synthese
Je kunt nu hoge tussenknopen identificeren, de min-cut op elke grens berekenen & de afstand van foutenverspreiding schatten via de diameter.
Toepas alles drie.
Een systeem: 50 klant-eindpunten -> 1 DNS -> 2 CDN POPs -> 4 omgekeerde proxies -> 16 achtergrondkopieën -> { DB-cluster (1 primaire + 2 standbys), Redis-cluster (5 knopen), 3 externe API's }.
Bijsluiter Notities
Bijsluiter Notities
Deze wiskundeleerstuk recasteert de Foutmodi & Explosiestraal hoofdles door grafiekmetriek (tussenheid, min-cut, diameter).
De laatste bijsluiter, geometry_of_observability_and_capacity, behandelt Voronoi cellen voor CDN PoP vangnetten, de snelheids-van-licht vloer van de vertragingsdriehoek & de wachtrijcurve herzien op het proxyniveau.
Goed gedaan.