我们正在努力建立有关如何在大型IT服务中使用Spring Batch的标准,并且具有不同的商业利益。
我们可能会有几个属于不同业务领域的批次。我们已经知道其中一些必须从所有批次共用的表中获取一些参数(即Java和COBOL;例如日期参数)。
我们将实施的Spring Batch作业的数量很难评估。没有目标可以重写现有的COBOL批次,并且尽可能鼓励连续流程处理。
有时会出现一些关于概念证据的问题,但目前很少有结论性的工作。
我们还有一些幂等批次,但那些使用基于地图的JobRepositories。然而,一个所有批次都是幂等的世界是一种幻想。
我们遇到的一个问题是找不到相关文档或建议。
在这种情况下, JobRepositories的最佳方法是什么?最好将所有这些方法存储到一个中央数据库中,还是每个JAR或业务单位都有自己的数据库?
我认为将批处理元数据放在与参数相同的位置似乎是合乎逻辑的。我认为我们不能将表添加到参数表所在的模式中,但我们可以在创建Spring Batch元数据模型的模式中查看它。
真正的问题是要知道为所有人制作一个元数据存储或制作个人元数据是否更好。
我在Spring Batch的文档中没有找到任何建议,但如果你能提供官方建议的链接,我将非常感激。如果不可能,任何开明的建议都是好的。
答案 0 :(得分:1)
没有"最好的"方法,您需要根据您的要求量身定制
pro central jobrepository
contra central jobrepository
答案 1 :(得分:1)
我同意迈克尔的所有项目并添加一个......分布式交易。虽然Spring Batch可以完成所有工作,但是如果要访问多个数据库,则需要使用分布式事务或存在数据丢失的风险。