【问题标题】:Is it possible to embed activemq broker into my servlet-container?是否可以将 activemq 代理嵌入到我的 servlet 容器中?
【发布时间】:2015-07-30 15:38:47
【问题描述】:

我有几个 tomcat servlet 容器,我需要在其中一个容器中部署 activemq 以允许其他容器连接到该代理。所有tomcats 在同一台机器上运行。

我现在需要避免部署独立的消息代理,因为生产环境不允许这样做。

更具体地说,我使用的是 spring 框架,据我所知,我们可以编写以下代码来启动嵌入式代理:

BrokerService broker = new BrokerService();

// configure the broker
broker.addConnector("tcp://localhost:61616");

broker.start();

但它是否允许不仅在同一个应用程序内连接到代理,还允许从使用 61616 端口的其他 tomcat 实例连接到代理?

【问题讨论】:

    标签: java spring activemq


    【解决方案1】:

    是的,允许在端口 61616 上进行远程连接。

    在 Apache Camel,我们还有一个在 WAR 应用程序中嵌入 ActiveMQ 代理并使用 ActiveMQ 的 xml 配置的示例。你可以在这里找到它:http://camel.apache.org/activemq-camel-tomcat.html

    【讨论】:

    • 感谢您的回答。但我不知道 Apache Camel 是什么。是否需要将其部署为使用嵌入式代理?
    • 不,不是。但是使用 XML 配置 ActiveMQ 通常更容易,因为所有文档都是关于此及其主要配置方式的。您也可以在 Java 代码中执行此操作,但执行起来更加冗长。
    猜你喜欢
    • 2015-10-27
    • 2013-08-31
    • 2012-05-02
    • 2011-05-28
    • 1970-01-01
    • 2012-05-13
    • 2013-01-06
    • 2013-06-19
    • 2018-02-16
    相关资源
    最近更新 更多