【问题标题】:How to enable Parallel Processing for a processing group using the Axon API?如何使用 Axon API 为处理组启用并行处理?
【发布时间】:2019-08-22 01:03:58
【问题描述】:

我正在尝试在我的一个处理组(确切地说是 Saga)上启用并行处理,我遵循 Axon Reference 并最终得到以下结果

@Autowired
public void configureProcessor(Configurer configurer) {
    configurer.eventProcessing().registerTrackingEventProcessor("NameOfMySagaProcessor",
            org.axonframework.config.Configuration::eventStore,
            c -> c.getComponent(
                    TrackingEventProcessorConfiguration.class,
                    () -> TrackingEventProcessorConfiguration.forParallelProcessing(1).andInitialSegmentsCount(2).andInitialTrackingToken(StreamableMessageSource::createHeadToken)
            )
    );
}

我在 entry_token 表中删除了此 saga 的条目,因此它会重新填充所有内容,但由于初始跟踪令牌是 head 令牌,因此我不希望 saga 重播所有事件以达到 head。

PS:这是我没有使用spring boot配置的主要原因,因为使用以下不允许您选择初始跟踪令牌

axon.eventhandling.processors.name.mode=tracking

axon.eventhandling.processors.name.threadCount=2

axon.eventhandling.processors.name.initialSegmentCount=4

spring boot 配置工作,但再次没有初始跟踪令牌,而 api 配置没有工作,因为没有任何改变(我的事件没有分成 4 段......)

我正在使用以下版本的 axon

compile (group: 'org.axonframework', name: 'axon-spring-boot-starter', version: '4.0.3'){
    exclude group:'org.axonframework', module: 'axon-server-connector'
}

【问题讨论】:

    标签: spring-boot domain-driven-design event-sourcing axon


    【解决方案1】:

    最终通过调用以下代码来修复它

    @Autowired
    public void configureProcessor(Configurer configurer) {
        configurer.eventProcessing().registerTrackingEventProcessor("NameOfMySagaProcessor",
                org.axonframework.config.Configuration::eventStore, configuration -> TrackingEventProcessorConfiguration.forParallelProcessing(2).andInitialTrackingToken(StreamableMessageSource::createHeadToken)
        );
    }
    

    【讨论】:

    • 我只是想准确地提出这个建议......配置 API 已经包含一个 TrackingEventProcessorConfiguration 类型的组件的可能性很高,它将使用它而不是您提供的配置。可惜我没有早点看到这个,但很高兴它成功了!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多