接收消息的SpringJMSListener调用spring批处理作业 . 它被配置为使用DefaultMessageListenerContainer,并发度为5,最大并发度为15 .

Spring批处理具有4个步骤的作业定义,这些步骤配置为tasklet .

当提交多个请求时,jms侦听器会获取5条消息并运行spring批处理 .

但偶尔,当从一个步骤移动到另一个步骤时,很少有工作需要更多的时间来执行 . 无法找到任何特定原因,说明为什么 Spring 季批次从步骤执行之间花费更多时间 . 这是在步骤完成之后并且在下一步骤开始之前 . 这并不总是发生 .

有关此特定问题的任何见解?