我正在寻找有关将activemq与tomcat集成的提示。

我的架构如下所示,其中每个应用程序都在不同的jvm /机器上运行,

生产者应用程序-> tomcat(activemq)->消费者应用程序

使用者和生产者应连接到远程计算机上的activemq。我还希望启用Web控制台。

最佳答案

首先,您应该在远程计算机上下载并安装ActiveMQ,默认情况下将启用Web控制台。

其次,您应该配置每个tomcat节点。

将activemq-all.jar(版本5.11及更高版本,您可以在此处下载http://mvnrepository.com/artifact/org.apache.activemq/activemq-all)放入 $ TOMCAT_HOME / lib 文件夹中。
ActiveMQ已为其所有受管理对象(连接工厂和目的地)准备好JNDI资源工厂。
您必须将其作为资源的参数工厂提供:

添加到 $ TOMCAT_HOME / CONF / context.xml

<Resource name="jms/activemq-factory"
        auth="Container"
        type="org.apache.activemq.ActiveMQConnectionFactory"
        description="JMS Connection Factory"
        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
        brokerURL="tcp://${broker.host}:${broker.port}"
        brokerName="LocalActiveMQBroker"
        useEmbeddedBroker="false"/>

<Resource name="jms/activemq-topic"
            auth="Container"
            type="org.apache.activemq.command.ActiveMQTopic"
            factory="org.apache.activemq.jndi.JNDIReferenceFactory"
            physicalName="activemq-topic"/>

将broker.host和broker.port替换为实际的ActiveMQ参数。

现在,您可以为acticvemq-topic编写使用者。
就这样。

07-25 22:32
查看更多