架构问题:我们有一个基于Apache Kafka的事件系统和多个系统生成/发送事件。每个事件都有一些数据,包括一个ID,我需要实现“ID已完成” - 事件。例:
Event_A(id)
Event_B(id)
Event_C(id)
收到异常,只收到所有3个活动,我需要发送一个Event_Complete(id)
。问题是我们有多个消费者群集,我们的数据库最终是一致的。
一种简单的方法是使用最终一致的DB来存储我们为每个ID拥有的事件,并添加“cron”作业以最终捕获竞争条件。
这感觉就像一个问题,可能已经解决了。所以我的问题是,有没有更好的方法(没有为图片引入一致的数据存储区)?
非常感谢!