【发布时间】:2018-04-08 01:38:21
【问题描述】:
我正在尝试对电子商务领域的事件溯源做一个小型 POC。所以我有订单服务、客户联系服务和送货服务。现在出于后勤原因,一些客户联系信息应该提供给送货人员,以便他们可以在他们不在家的情况下给客户打电话等。显然,客户可以更新他们的联系信息,理想情况下,送货应该显示最新的联系信息.我使用 kafka 作为消息传递框架和状态存储。 当我通过读取与聚合的状态更改(例如客户联系信息更改)相关的事件来创建状态存储并将它们应用于聚合时,状态存储以更改日志主题(例如contact-service-customer-contact-变更日志)。现在,如果我在另一个服务(例如交付服务)中需要一些这些数据,我可以使用相同的更改日志主题来创建该服务本地的另一个状态存储吗?在可用的文献中,这种类型的主题被称为“内部”,因此似乎我们不应该将这个主题用于除了为原始服务的实例重新构建状态存储之外的任何事情。所以我们应该将状态存储的更新重新发布到一个新主题,以便其他服务加入这些数据?还是有另一种方法来解决这个用例?
【问题讨论】:
标签: apache-kafka apache-kafka-streams event-sourcing