after each chapter
Compare
You started with a normal single caster, then bolted on AZ HA, then region HA. The software never became a cluster — only the recovery plane changed.
Progression
| Chapter | Example | Failure you absorb | Typical gap |
|---|---|---|---|
| Baseline | relay_iport |
None — host down = stream down | until you repair |
| Dual-AZ | relay_iport_ha |
AZ / single host | ~20–40s (~34s measured) |
| Multi-region | relay_iport_ha_mr |
Region | 1–3+ min (DNS) |
Dual-AZ vs multi-region
| Dual-AZ L4 | Multi-region DNS | |
|---|---|---|
| Mechanism | Shared NLB target health | Route53 failover aliases |
| VIP on failover | Unchanged | Same FQDN, new answer |
| Dominant delay | NLB unhealthy + reconnect | Resolver / TTL |
| Keep NLB? | Yes (the failover plane) | Yes (stable alias + health) |
Dual-AZ wins on recovery time. Multi-region wins on regional blast radius. Neither migrates an established TCP stream — NtripCaster never did that.
Decision
| Choose | When |
|---|---|
| Baseline only | Lab / single site; accept host repair time |
| Dual-AZ | AZ / host resilience; shortest reconnect gap |
| Multi-region | Region diversity; accept minute-scale DNS |
| Neither HA alone | Continuous fixed / safety-critical without a hotter path |
Normal setup → prove the stream → dual-AZ if you need AZ HA → multi-region if you need regional diversity.