kafka作为事件源系统中的事件存储

wed*_*ens 10 cqrs event-sourcing apache-kafka

此问题类似于使用Kafka作为(CQRS)Eventstore.好主意?,但更具体的实施.如何使用kafka作为事件存储,当我有数千个事件"源"(DDD中的聚合根)?正如我在链接问题和其他一些地方读到的那样,我对每个来源的主题都有疑问.如果我按类型将事件拆分为主题,则使用和存储会更容易,但我需要访问特定源的事件流.如何使用kafka进行活动采购?

eth*_*nny 2

将所有事件源发布到具有数据类型(thrift?)的单个主题,其中包含每个事件源的一些唯一标识符。然后为您感兴趣的每种事件类型创建使用者,并使用唯一的使用者组名称来标识每个事件类型。这样每个唯一的源消费者将在zookeeper中拥有自己的偏移值。每个人都会阅读整个主题,但只输出(或处理)来自单个来源(或一组来源)的信息。