我已将提交间隔设置为1000。但是,它不起作用。不过,我随机收到物品给我的物品作者。请指教。
<batch:step id="step1" next ="step2">
<batch:tasklet task-executor="simpleTaskExecutor" throttle-limit="20">
<batch:chunk reader="itemReader" processor="itemProcessor" writer="itemWriter" commit-interval="1000" />
<batch:listeners>
<batch:listener ref="appJobExecutionListener" />
<batch:listener ref="appJobFailureLoggerListener" />
<batch:listener ref="customStepListener" />
</batch:listeners>
</batch:tasklet>
</batch:step>
答案 0 :(得分:1)
您正在使用Async执行程序。 (猜测,你没有在配置中显示)async执行程序设置为20,这意味着最多可以有20个并行执行的线程。
如果要读取记录直到提交间隔,然后一次处理一个块,则应该从配置中删除任务执行程序