【发布时间】:2019-03-12 12:14:54
【问题描述】:
我正在使用带有 Spring Boot 的 Axon 框架 4.0.3 进行事件溯源,并拥有一个配置为具有多个段/线程以同时处理事件的跟踪处理器:
axon.eventhandling.processors[my_processor].initial-segment-count = 6
axon.eventhandling.processors[my_processor].thread-count = 3
这意味着有 2 个 my_processor 节点,每个节点使用 3 个线程。
但是,此解决方案的问题在于它不可扩展。我必须从一开始就知道我必须拥有多少个节点和线程,因为以后无法更改它:如果我增加initial-segment-count 并重新启动处理器,则不会发生任何事情。如果我减少段数,更糟糕的是:用于“已删除”段的事件永远不会被处理!
理想情况下,它应该能够仅指定每个节点应该使用的线程数。之后,当向处理器添加新节点时,段的数量应相应增加。同样,如果我删除节点,段的数量应该会减少。 Axon 是否可以做到这一点,或者根本就没有设计成以这种方式扩展?
【问题讨论】:
标签: cqrs event-sourcing axon