一,activemq安装和配置相关信息

下载

ActiveMQ下载最新的发布版本。下载地址http://activemq.apache.org/activemq-5111-release.html

(注意:Apache ActiveMQ 5.11.0, It is build with and requires jdk 1.7,ActiveMQ5.11.0以后都是用jdk1.7编译的,所以必须安装jdk1.7以上的版本)

安装

直接解压,然后运行bin目录下的activemq.bat文件。

修改服务端口

打开conf/activemq.xml文件,修改以下红色字体部分

<transportConnectors>

<transportConnector name="openwire" uri="tcp://10.42.220.72:61618"discoveryUri="multicast://default"/>

</transportConnectors>

控制台端口

打开conf/jetty.xml文件,修改以下红色字体部分

<bean id="jettyPort"class="org.apache.activemq.web.WebConsolePort"init-method="start">

<property name="port" value="8162"/>

</bean>

启动控制台:http://localhost:8162

在conf/user.properties下添加用户名和密码eg:admin=admin

然后在里面可以管理你的queue和topic消息

集群配置与部署

这里以Broker-A + Broker-B建立cluster,Broker-C作为Broker-B的slave为例:

 

1)首先在Broker-A节点中添加networkConnector节点:

<networkConnectors>

                <networkConnector   uri="masterslave:(tcp://0.0.0.0:61617,tcp:// 0.0.0.0:61618)" duplex="false"/>

</networkConnectors>

 

2)修改Broker-A节点中的服务提供端口为61616:

<transportConnectors>

         <transportConnectorname="openwire"uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>

</transportConnectors>

 

3)在Broker-B节点中添加networkConnector节点:

<networkConnectors>

                <networkConnector   uri="static:(tcp:// 0.0.0.0:61616)"duplex="false"/>

</networkConnectors>

 

4)修改Broker-B节点中的服务提供端口为61617:

<transportConnectors>

         <transportConnectorname="openwire"uri="tcp://0.0.0.0:61617?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>

</transportConnectors>

 

5)修改Broker-B节点中的持久化方式:

      <persistenceAdapter>

           <kahaDB directory="/localhost/kahadb"/>

        </persistenceAdapter>

 

6)在Broker-C节点中添加networkConnector节点:

<networkConnectors>

                <networkConnector   uri="static:(tcp:// 0.0.0.0:61616)"duplex="false"/>

</networkConnectors>

 

7)修改Broker-C节点中的服务提供端口为61618:

<transportConnectors>

         <transportConnectorname="openwire"uri="tcp://0.0.0.0:61618?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>

</transportConnectors>

 

8)修改Broker-B节点中的持久化方式:

      <persistenceAdapter>

           <kahaDB directory="/localhost/kahadb"/>

       </persistenceAdapter>

 

分别启动broker-A、broker-B、broker-C,因为是broker-B先启动,所以“/localhost/kahadb”目录被lock住,broker-C将一直处于挂起状态,当人为停掉broker-B之后,broker-C将获取目录“/localhost/kahadb”的控制权,重新与broker-A组成cluster提供服务。

posted @ 2015-05-14 17:38  RosyDawn  阅读(776)  评论(0编辑  收藏  举报