【问题标题】:Wanted to Close ActiveMq Connection想要关闭 ActiveMq 连接
【发布时间】:2012-04-07 10:23:10
【问题描述】:

我需要嵌入式 ActiveMq 和 Spring 框架方面的帮助。

问题是:- 我正在使用带有 Spring 框架 JMS 支持的 Embedded ActiveMQ。

作为开发的一部分,我有一个向虚拟主题发布消息的组件。而且我有另一个组件订阅来自该主题的消息。

现在的问题是订阅消息的应用程序正在集群环境中运行,即一个主实例和一个从属实例。我发布的事件将发送到主实例或从属实例。但我希望消息只能由主实例订阅。有什么办法可以阻止从属实例不订阅事件?

我们设置了一个系统属性来区分主实例和从属实例。我尝试通过覆盖ActiveMqConnectionFactory 类的createConnection 方法来添加条件。

if(master) {
ActiveMqConnectionFactory.createConnection} 
else 
return null.

在这种情况下,DefaultMessageListener 的 Spring 框架我们配置为监听事件总是试图刷新连接,因为我为从机返回 null,所以它无法创建连接。线程将以 5000MS 的间隔无限循环..

我有什么办法可以说 MessageListener 停止刷新连接..

请帮我解决这个问题..

【问题讨论】:

    标签: activemq


    【解决方案1】:

    如果集群是主/从...那么在给定时间应该只有一个处于活动状态...从 AMQ 客户端的角度来看,听起来您有双主...

    无论如何,您始终可以使用 ActiveMQ 安全性来根据连接凭据控制对给定主题/队列的访问(请参阅http://activemq.apache.org/security.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-31
      • 1970-01-01
      • 2010-10-27
      • 2019-07-27
      • 2018-11-10
      • 2012-10-29
      相关资源
      最近更新 更多