【问题标题】:Changing Mule Flow Threading Profile at runtime在运行时更改 Mule Flow 线程配置文件
【发布时间】:2015-12-12 05:54:07
【问题描述】:

我有一个需求,我需要在运行时更改 Mule 流线程行为,而无需弹回整个 Mule 容器。我想出了几种不同的方法来实现这一点,但都没有奏效。

  1. 我尝试访问 Mule 上下文注册表,并从那里尝试查找“FlowConstructLifecycleManager”对象,以便我可以在那里点击并访问对象的线程配置文件并重置这些值,然后停止并以编程方式启动流程,以便在流程中应用更改。我被困在这种方法中,因为我既无法从 Mule Spring Registry 也无法从 Transient Registry 获取 FlowConstructLifecycleManager 对象。我能够掌握 Flow 对象,尽管它直接引用了该 FlowConstructLifecycleManager 对象。但是,不幸的是,他们将这个对象设置为受保护的,并且没有公开任何方法让我们访问这个对象。

  2. 1234563但是,我被困在这种方法中,即使我将同一个 Flow 类的版本打包并放在容器的 lib/user 文件夹中,它仍然没有选择我的类版本,并加载代替原来的版本。

如果我能获得任何关于解决我的第一个或第二个问题的方法的指针,那将是非常有帮助的。

提前致谢, 安南亚

【问题讨论】:

  • 你能告诉我你为什么要这样的要求吗?

标签: mule


【解决方案1】:

在我们公司,我们正在构建一个仪表板,我们应该能够通过增加/减少流的活动线程或更改花粉轮询频率来启动/停止任何流或更改任何流的处理能力。所有这些都应该在运行时完成,而不需要任何服务器停机时间。

无论如何,我终于让它工作了。我必须修补 mule-core jar 并公开一些对象,以便我可以访问线程配置文件对象并在运行时调整值并停止/启动流程以反映更改生效。我知道这有点乱,但它确实有效。

谢谢, 安南亚

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多