首页 > 代码库 > ActiveMQ配置

ActiveMQ配置

1.连接BrokerURI

failover://(tcp://localhost:61613,tcp://localhost:61612)

2.Master-slave配置

ActiveMQ的主备有三种方式:纯Master/Slave、文件共享方式、数据库共享方式。

3.Load Balance

#activemq.xml

<networkConnectors>
            <networkConnector uri="static:(tcp://localhost:61616)" duplex="true"/>
</networkConnectors>

静态路由支持failover,如:static:failover://(tcp://host1:61616,tcp://host2:61616)

4.Message Persistence

在broker中设置属性persistent=”true”(默认是true),同时发送的消息也应该是persitent类型的。ActiveMQ消息持久化有三种方式:AMQ、KahaDB、JDBC。

 

目前使用的是KahaDB方式(AMQ默认)。

Broker默认是持久化的,要做到消息的持久化只需在发送的时候标记为持久化即可,以目前使用的stomp协议为例,只需添加”persistent”=>”true”(PHP语法)到头信息中即可。

5.Authentication And Authorization

#activemq.xml

<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="${activemq.username}" password="${activemq.password}" groups="admins"/>
<authenticationUser username="${test.username}" password="${test.password}" groups="test"/>
</users>
</simpleAuthenticationPlugin>
<authorizationPlugin>
<map>
<authorizationMap>
<authorizationEntries>
<authorizationEntry queue=">" read="admins" write="admins" admin="admins"/>
<authorizationEntry queue="TEST.>" read="test,admins" write="test" admin="test"/>
<authorizationEntry topic="ActiveMQ.Advisory.>" read="test,admins" write="test,admins" admin="test,admins"/>
</authorizationEntries>
</authorizationMap>
</map>
</authorizationPlugin>
</plugins>

 

#credentials.properties

activemq.username=system

activemq.password=manager

guest.password=password

 

test.username=test

test.password=pwd

 

PS:有关activemq.xml的配置都是作为broker元素的子元素的~

ActiveMQ配置