我们关闭了 Pub/Sub,竟无人察觉
We turned off Pub/Sub and nobody noticed

在 incident.io 的事件驱动架构中,消息中间件曾是单点故障风险。为了达成 99.99% 的 SLA 目标,我们决定引入 NATS 作为第二套消息代理,构建动态负载均衡机制。通过封装 eventadapter 接口,我们实现了在 Pub/Sub 和 NATS 之间的无缝切换与流量分发,甚至支持自动故障转移。上周,我们成功完全关闭了 Google Cloud Pub/Sub,整个过程对零客户造成影响。这不仅验证了系统的高可用性,也证明了通过合理的抽象设计和冗余策略,可以彻底消除对单一云厂商服务的依赖。
我们的消息代理已成为单点故障,这与我们自身设定的 99.99% 可用性目标背道而驰。
- rorymalcolm
声明:我在该事故处理公司工作。
这是那种项目的典型例子,最终目标就是造出一个尽可能吓人的按钮。在你按下那个按钮之前,项目就算没完成。你做完所有工作把按钮造出来,然后还得亲手按下去。
永远吓人,但终究会很有趣,不过绝对是那种“先苦后甜”的乐趣。
- shintoist
NATS 是一项非常酷的技术,理应获得更多关注。