Spring Batch间歇性地重复执行远程分区步骤

时间:2019-11-19 08:53:11

标签: spring-batch spring-kafka

我有一个春季批处理作业,该作业使用Kafka上的远程分区将工作负载分散到多个主机上。

这很好,除了在非常高的负载下,某些分区要重复处理。我检查了数据库,并验证了每个分区仅创建一次,并且相应的kafka消息仅发送了一次,因此看来这些相同的kafka偏移量是重复处理的(间歇地)。

有时,这些重复项会间隔几个小时发生,但是有时它们会在完全相同的时间发生,从而导致同时执行同一步骤。有些步骤最多执行6-7次。

如果步骤已被标记为STARTED,作业存储库是否应阻止此操作? BATCH的kafka ACK模式会导致这样的问题吗?记录的ACK模式可以提供帮助吗?这会重新平衡消费者吗?

请就可能导致此问题的其他想法或建议提供帮助,或者如何解决该问题?

0 个答案:

没有答案