#223 Throw redundancy at the tail: Request Hedging bei Google & Co.
1 Stunde 5 Minuten
Podcast
Podcaster
Beschreibung
vor 1 Woche
Kennst du das? Neun Klicks sind blitzschnell, der zehnte hängt
gefühlt ewig. Genau da frisst die Tail Latency deine User
Experience und der Durchschnittswert hilft dir kein bisschen. In
dieser Episode tauchen wir in Request Hedging ein, also das
bewusste Duplizieren von Requests, um P99 zu drücken und
Ausreißer zu entschärfen.
Wir starten mit einem kurzen Recap zu Resilience Engineering:
Timeouts, Retries, Exponential Backoff, Jitter, Circuit Breaker.
Danach gehen wir tief rein ins Hedging: Was ist der Hedge
Threshold, warum optimieren wir auf Tail statt Head Latency und
wie Perzentile wie P50, P95 und P99 die Sicht auf Performance
verändern. Wir zeigen, wie du Hedging sicher umsetzt, ohne dein
Backend zu überlasten, wo Idempotenz Pflicht ist und warum
Schreibzugriffe besonders heikel sind.
In der Praxis klären wir, wie du Requests sauber cancelst: HTTP
1.1 via FIN und Reset, HTTP 2 mit RESET_STREAM, gRPC Support und
wie Go mit Context Cancellation nativ hilft. Zum Tooling gibt es
echte Beispiele: Envoy als Cloud-native Proxy mit Hedging, gRPC,
Open Source Erfahrungen. In der Datenbankwelt sprechen wir über
Read Hedging, Quorum Reads und Write-Constraints bei Cassandra
und Kafka, über Vitess im MySQL-Universum und Grenzen von PG
Bouncer. Auch Caches wie Redis und Memcached sowie DNS Patterns
wie Happy Eyeballs sind am Start. Historisch ordnen wir das Ganze
mit The Tail at Scale von Jeff Dean ein und schauen, wie Google,
Netflix, Uber, LinkedIn oder Cloudflare Hedging verwenden.
Am Ende nimmst du klare Best Practices mit: Hedging gezielt auf
Tail Latency einsetzen, Requests wirklich canceln, Idempotenz
sicherstellen, dynamische Thresholds mit Observability füttern
und deine Guardrails definieren.
Neugierig, ob Hedging dein P99 rettet, ohne dich selbst zu
ddosen? Genau darum geht es.
Bonus: Hedgehog hat damit nichts zu tun, auch wenn der Name dazu
verführt.
Keywords: Resilience Engineering, Request Hedging, Tail Latency,
P99, Perzentile, Microservices, HTTP 2, gRPC, Go Context,
Observability, Monitoring, Prometheus, Grafana, Envoy, Open
Source, Cassandra, Kafka, Vitess, Redis, Memcached, Quorum Reads,
Tech Community, Networking.
Unsere aktuellen Werbepartner findest du auf
https://engineeringkiosk.dev/partners
Das schnelle Feedback zur Episode:
(top) (geht
so)
Anregungen, Gedanken, Themen und Wünsche
Dein Feedback zählt! Erreiche uns über einen der folgenden Kanäle
…
EngKiosk Community:
https://engineeringkiosk.dev/join-discord
LinkedIn: https://www.linkedin.com/company/engineering-kiosk/
Email: stehtisch@engineeringkiosk.dev
Mastodon: https://podcasts.social/@engkiosk
Bluesky:
https://bsky.app/profile/engineeringkiosk.bsky.social
Instagram: https://www.instagram.com/engineeringkiosk/
Unterstütze den Engineering Kiosk
Wenn du uns etwas Gutes tun möchtest … Kaffee schmeckt uns
immer
Buy us a coffee: https://engineeringkiosk.dev/kaffee
Links
Engineering Kiosk #204 Resilience Engineering: Timeouts,
Jitter, Backoff & andere Systemretter:
https://engineeringkiosk.dev/podcast/episode/204-resilience-engineering-timeouts-jitter-backoff-andere-systemretter/
Vitess Tablet throttler:
https://vitess.io/docs/archive/15.0/reference/features/tablet-throttler/
envoy Request Hedging:
https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/http/http_routing#request-hedging
gRPC Request Hedging:
https://grpc.io/docs/guides/request-hedging/
The tail at Scale:
https://research.google/pubs/the-tail-at-scale/
Sprungmarken
(00:00:00) Resilience Engineering: Request Hedging
(00:04:16) Recap: Resilience Engineering mit Timeouts, Backoff
und Jitter
(00:06:22) Was ist Request Hedging?
(00:07:28) Info/Werbung
(00:08:28) Was ist Request Hedging?
(00:18:17) Ist Request Hedging nicht kontraproduktiv?
(00:26:17) HTTP Request Cancellation
(00:37:06) Dynamischer Hedge-Threshold
(00:45:27) Die Arten von Request Hedging
(00:48:24) Request Hedging in der Praxis und Open Source
(00:57:47) Woher kommt Request Hedging?
Hosts
Wolfgang Gassler (https://gassler.dev)
Andy Grunwald (https://andygrunwald.com/)
Community
Diskutiere mit uns und vielen anderen Tech-Spezialist⋅innen in
unserer Engineering Kiosk Community unter
https://engineeringkiosk.dev/join-discord
Weitere Episoden
15 Minuten
vor 1 Tag
15 Minuten
vor 1 Tag
10 Minuten
vor 2 Tagen
13 Minuten
vor 4 Tagen
In Podcasts werben
Kommentare (0)