我已经实现了带有远程分区的Spring Batch集成。在此,我有单独的节点(2个节点)。
每个节点具有相同的从属和主配置。我将从节点1或节点2触发批处理。
让我说我是从节点1触发的,因此节点1上的主节点必须将很少的分区分配给节点1的从属节点,将很少的分区分配给节点2的从属节点。
在一个表中,我的ID为1-2000。在第一个分区中,我有1-100。第二分区101-200,依此类推。
因此,从这些p0到p10应该去到节点1,从p11到p20应该去到节点2。 我应该如何配置呢?
如果您需要我的配置才能知道我会发帖
答案 0 :(得分:0)
这取决于工人的数量(实际上还有许多其他参数)。在您的示例中,您有20个分区。如果创建20个工作程序,则每个分区都有可能由一个工作程序处理,但这不能保证。在远程分区中,分区程序使用分区元数据创建执行上下文,并将其发送到队列(作为StepExecutionRequest
)。现在,这些执行请求如何在各个工作人员之间分配(即,工作人员如何从队列中提取这些执行请求)将回答您的问题。