我有两个独立的Spring-Boot微服务,一个是命令端,另一个是查询端,其中命令服务将事件存储在Mongodb中,并将事件放在RabbitMQ中,然后查询端将订阅队列并构建查询Modal.Now,如何在Axon中实现重放事件和构建查询模型??有没有可能两个服务在不同的node.if上独立运行是不可能的,那么我应该遵循什么来实现呢?
发布于 2019-04-29 21:22:47
如果您选择使用RabbitMQ分发事件,则必须使用Axon Subscribing Event Processors和SubscribableMessageSource作为源- https://docs.axoniq.io/reference-guide/extensions/spring-amqp#reading-events-from-an-amqp-queue
只有Tracking Event Processor支持事件回放- https://docs.axoniq.io/reference-guide/configuring-infrastructure-components/event-processing/event-processors#replaying-events
考虑使用Axon Server或Kafka分发事件。它们支持跟踪处理器(也支持自动回复选项)。
你可以在这里找到一些例子:
...and是的,您的命令端可以独立于您的查询端(投影)进行部署。查询端可以通过回复过去的所有事件从头开始重新创建。这将启用蓝绿色部署(随着projection DB模式的变化)。
最好的,伊凡
https://stackoverflow.com/questions/55903553
复制相似问题