Schutzschalter
6 Aufrufer treffen auf eine ausgefallene Abhängigkeit, die etwa 80ms braucht, um das zu sagen. Ein Arm fragt jedes Mal; der andere hört nach dem dritten Fehlschlag auf.
Latenz beseitigen als Architektur, nicht als Trickkiste: optimistische Mutationen, Cache-Stufen, Stampede-Schutz, verschobene Nacharbeit — jeweils gegen die naive Variante gemessen.
Was den schnellen Pfad schnell hält, wenn eine Abhängigkeit es nicht ist. Dieselben zwei Arme, dieselben echten Module — diesmal ist die Abhängigkeit selbst defekt, langsam oder hängend.
6 Aufrufer treffen auf eine ausgefallene Abhängigkeit, die etwa 80ms braucht, um das zu sagen. Ein Arm fragt jedes Mal; der andere hört nach dem dritten Fehlschlag auf.
8 Aufrufe an eine ~100ms-Abhängigkeit halten bereits einen Pool mit 4 Plätzen, als ein schneller Aufruf eintrifft. Ein Arm teilt sich den Pool; der andere gibt jeder Fähigkeit ihre eigene Kammer.
3 aufeinanderfolgende Aufrufe an eine Abhängigkeit, die nie rechtzeitig antwortet. Ein Arm gibt jedem sein eigenes 100ms-Zeitlimit; der andere teilt ein einziges Budget von 150ms unter ihnen auf.
Lastabwurf und begrenzte Wiederholung gehören zur selben Richtlinie, haben hier aber kein Panel: Keines davon ergibt einen Vergleich, den eine Stoppuhr ehrlich darstellen kann, und eine schwache Demonstration ist schlechter als keine. Beide sind durch ihre Unit-Tests und die Dokumentation abgedeckt.
Geht dieses Pattern noch besser? Sag uns, wie.
Feedback geben