Cache stampede
En cache stampede uppstår när samtidiga cachemissar startar samma kostsamma beräkning eller datafråga flera gånger.
En cache stampede uppstår när många anrop behöver samma saknade cachevärde ungefär samtidigt och därför startar samma arbete vid datakällan. Ett utgånget värde eller en cache som startar tom kan på så sätt orsaka en belastningstopp.
I en fiktiv kontrollpanel slår 100 samtidiga anrop inom samma behöriga dataområde upp summary:tenant-7. Om sammanställningen saknas och arbetet inte samordnas kan många identiska omberäkningar starta.
Samordna anrop för samma data
Request coalescing samordnar uppslagen: En pågående omberäkning delas för samma nyckel och dataområde. Andra anrop väntar kontrollerat på resultatet eller får ett äldre värde om verksamhetens aktualitetsregel tillåter det. Samordningen får inte blanda olika användare eller behörighetsområden.
Ett lås som bara verkar inom en process samordnar inte automatiskt alla servrar. Misslyckade beräkningar och för långa väntetider behöver också en avgränsad felhantering. Cacheinvalidering avgör när ett värde inte längre är användbart; stampedeskydd hanterar samtidig förnyelse.
Källor
Relaterade begrepp
- CachningCachning återanvänder sparade data eller resultat. Giltighet och tillåtet användarområde hör till utformningen.
- CacheinvalideringCacheinvalidering avslutar återanvändning av en kopia enligt fastställda regler. Källposten är fortfarande en separat sak.
- BackpressureBackpressure anpassar inflödet av data till mottagarens bearbetningskapacitet genom signaler om att sakta ned eller pausa.
- Race conditionEtt felaktigt resultat som beror på tidsordningen mellan överlappande åtkomster.
- MinnesläckaMinne som inte längre behövs hålls kvar i onödan under drift.
- SamtidighetAtt organisera flera uppgifter så att deras behandlingstider kan överlappa.
Ditt projekt med ASES
Beskriv ditt projekt för oss. Vi hör av oss med en första bedömning.