Mule 4 Runtime - 清除批处理的应用程序数据

问题描述

我在 Anypoint Studio 中运行包含大量数据的 Mule Batch 时遇到间歇性问题。通过在“运行配置”中的“清除应用程序数据”下启用“始终”选项(按照 Mule ESB - Clear Memory of a batch process 中的给定说明),可以解决该问题。该选项如图所示。

如何在启动期间在独立的 Mule Runtime 中启用相同的“始终”选项,这意味着当我们没有从 Anypoint Studio 运行批处理时?是否有任何可用的命令行参数可以在 Mule Runtime 的启动脚本中使用以实现相同的目标?

enter image description here

解决方法

通过删除本地数据,您将删除批处理队列、持久对象存储以及一些其他信息。在像 Anypoint Studio IDE 这样的开发环境中,它通常没问题,但对于独立的 Mule Runtime,这意味着您正在删除生产数据,例如批处理使用的记录,以便在重新启动后继续处理。该数据将丢失。话虽如此,如果数据完全损坏,则可能需要它。

解决问题的根本原因而不是删除数据是对任何用户的最佳做法和强烈建议。并且永远不要在每次开始生产 Mule 时都这样做,只有在绝对没有其他选择的情况下才这样做。

我完全不建议删除本地文件。如果即使在我的警告之后你绝对需要这样做永远不要删除 .mule 目录。如果您仍然想冒丢失数据的风险,请仅删除 .mule 目录下具有应用程序名称的目录。