在 Mule 中从批处理步骤增加计数器

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

我有一种情况,我正在使用 Batch 来处理记录。

每条记录都包含一个子记录,我必须对所有记录进行汇总。

现在我正在做的是在每个批次步骤中,我正在阅读编号。子记录的数量并将其存储在某个流变量中,称为“计数器”。仅在此批处理步骤中,我将此计数器添加到另一个流变量(例如“total_count”)中。但此时 Total_count 不会保持持久状态。对于每条记录,total_count 设置为 0,因为它是在流程开始时初始化的。我也将 Total_count 设置为会话变量和属性。但它给出了相同的结果。

我想要这个子记录的总数。我应该使用什么方法?如何根据每条记录增加total_count的值。

谢谢。

mule batch-processing
2个回答
0
投票

请尝试将计数保留在记录变量中。它应该可用并跨批次记录保留。请参阅下面的链接

记录变量


0
投票

这是一个类似的问题

Mule ESB 如何实现一个计数器变量来计算一个流被调用的次数

如果您需要存储跨应用程序可用的运行时数据,您可以将数据作为对象存储在注册表中。这是一个例子

muleContext.getRegistry().registerObject("Count", new Integer(14))

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