目前,我正在实现事件驱动架构,并有一个命令服务(写部分)和另一个查询服务(读取部分)。
我现在在做什么。
CommandService
这听起来不错,如果你听你自己的事件。假设我听到了来自CommandService的外部事件
event
在这种方法中,我可以看到更新我的读取模型有双重延迟。第一次延迟-> CommandService时间拉出事件第二延迟-> ReadService时间来提取从CommandService生成的事件。
我在想,如果我更新我的ReadService来直接听CommandService事件存储,而不需要事件总线,那么我可以减少其中一个延迟。
你认为如何?
发布于 2019-10-31 06:20:33
不久前我们也做过类似的事。基本上,我们
我希望它能帮到你!
发布于 2019-10-31 06:28:02
--我在想,如果我更新我的ReadService来直接听CommandService事件存储,而不需要事件总线,那么我可以减少其中一个延迟。
是的,您将减少延迟,但是您将引入两个服务之间的耦合,这并不一定不好,但是如果这两个服务是解耦的(使用总线),您可以独立地扩展每个服务。
此外,如果您使用托管总线(如RabbitMQ ),您将受益于消息确认、多种类型的消息传递和queues..etc。
https://stackoverflow.com/questions/58560153
复制相似问题