Mule 4:如果Mule应用程序崩溃/重新部署,则批处理作业的行为

问题描述 投票:0回答:1

我们需要实现以下方案:1. Scheduler每30分钟触发一次该过程。2.根据时间戳从Salesforce获取数据。3.使用Mule批处理作业将所有记录插入数据库。

在这种情况下,如果Mule应用程序崩溃或在两者之间停止,我们需要从头开始重新启动它,而不是从Mule应用程序停止的地方开始。

以下是我们在Anypoint Studio中进行测试时得到的输出:如果我们在批处理运行期间之间停止应用程序,则即使在查询中获取的新记录处理完成后,记录仍会插入数据库中。

例如如果在当前批次中提取了1200条记录,则在数据库中插入的实际记录超过1200条,即它们是从前一个批次中停止的记录。

所以查询是:1.是否可以使用某些配置更改此行为,以便在mule应用程序崩溃时可以丢弃当前批处理中未处理的记录?2. Mule Batch组件中“历史记录”选项卡的意义是什么?它具有两个字段“最大年龄”和“时间单位”。但是,设置值后,应用程序将无法部署,并且显示“发现无效内容-batch:history”3.当应用程序失败时,是否有办法查看m子批处理作业在文件系统中保留的记录?可以在工作区的.mule文件夹中查看持久对象库。

mule batch-processing mule-component mule4
1个回答
0
投票

从运行配置(在项目树上的项目上单击鼠标右键->运行方式-> Mule Application'CONFIGURE',设置要始终重新启动的应用程序数据。 (可能需要向下滚动才能看到该选项)

希望有帮助

© www.soinside.com 2019 - 2024. All rights reserved.