首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果文件中的项目数非常少,那么spring批处理多线程步骤可以安全使用吗?

如果文件中的项目数非常少,那么spring批处理多线程步骤可以安全使用吗?
EN

Stack Overflow用户
提问于 2014-06-12 11:53:19
回答 1查看 623关注 0票数 0

我在文档中看到,使用多线程步骤是不安全的,因为许多ItemReaders和Writer都不是线程安全的。

我正在使用FlatFileItemReader读取和处理项目。

在需要处理大量项的文件中,我使用的是远程分区。

但有些步骤只有2-3个条目的输入文件(它们只是市场ids,如eu、gb等)。我会再增加几个市场。我需要运行一些以这些市场ids作为输入的命令。我希望为所有这些命令并行运行命令。

即使我使用的是FlatFileItemReader,多线程步骤是否可以安全地用于这种用例?或者我应该选择远程分区(没有多少数据需要分区)?

另外,如果我使用多线程步骤,它会正常运行吗?我用不同的参数(例如不同的日期)启动多个相同作业的实例?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-12 14:33:58

FlatFileItemReader不是线程安全的,因为它的状态基于已读取的文件中的行数。当将它与多个线程一起使用时,该数字会被覆盖,因此没有一种方法可以知道重启时已经读取和未读取的内容。如果可重新启动不是一个问题(如果作业失败,您可以从一开始就开始工作),那么您可以在一个步骤中使用多个线程来处理FlatFileItemReader

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24183703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档