我创建了一个 spring 批处理作业,它读取平面 CSV 文件的块(提交级别 = 10)并将输出写入另一个平面文件。干净利落。为了测试本地扩展,我还为 tasklet 配置了一个具有 10 个线程池的 TaskExecutor,从而通过使用多线程步进模式引入了并行性。正如预期的那样,这些线程同时读取项目,直到它们的块被填充并将块写入输出文件。同样正如预期的那样,由于这种并发阅读,项目的顺序发生了变化。但是是否有可能保持固定的顺序,最好仍然利用通过使用多个线程获得的更高性能?
问问题
2283 次