设计时可能考虑的问题

  • 分区模型紧耦合存储和计算,不是云原生(Cloud Native)的设计。
  • 存储模型过于简单,对文件系统依赖太强。
  • IO 不隔离,消费者在清除 Backlog 时会影响其他生产者和消费者。
  • 运维复杂,替换机器、服务扩容需重新均衡数据。

设计实现

otobus/event_bus

Elixir 语言实现, 较简单

事件总线设计收集 - 图1
图 1 : 画的不错的一个图

Apache Pulsar