您的位置:首页 > 其它

Broker

2016-03-08 15:44 573 查看
一、Running Broker 

1、运行bin里面的activemq.bar启动broker

2、此外也可以通过Broker Configuration URI或Broker XBean URI对broker进行配置

eg: activemq 

activemq xbean:myconfig.xml

activemq xbean:file:./conf/broker1.xml

activemq xbean:file:C:/ActiveMQ/conf/broker2.xml

activemq broker:(tcp://localhost:61616, tcp://localhost:5000)?useJmx=true 

activemq broker:(tcp://localhost:61616, network:tcp://localhost:5000)?persistent=false

二、Embedded Broker

1、通过在应用程序中以编码的方式启动broker

BrokerService broker = new BrokerService();   

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

broker.start();

2、可以通过BrokerFactory来创建broker

BrokerService broker = BrokerFactory.createBroker(new URI(someURI)); 

someURI举例: file:foo/bar/activemq.xml

broker:tcp://localhost:61616

xbean:activemq.xml

当使用XBean的配置方式的时候,需要指定一个xml配置文件:

java代码

BrokerService broker = BrokerFactory.createBroker(new URI("xbean:com/test/activemq.xml"));

Xml代码  

<bean id="broker" class="org.apache.activemq.xbean.BrokerFactoryBean">   

<property name="config" value="classpath:org/apache/activemq/xbean/activemq.xml" />   

<property name="start" value="true" />   

</bean> 

三、Monitoring Broker

1、 JMX监控Broker

启动监控功能,在配置文件中配置useJmx=”true“,运行java自带的jconsole,选择需要连接到的agent。

jconsole连接到Broker不需要输入用户名和密码,需要配置密码保护请看ActiveMQ_in_Action。

2、Web Console

Web Console被集成到了ActiveMQ的二进制发布包中,因此缺省访问http://localhost:8161/admin即可访问Web Console。ps:端口号可修改。

出于安全性或者可靠性的考虑,Web Console 可以被部署到不同于ActiveMQ的进程中。例如把activemq-web-console.war部署到一个单独的web容器中(Tomcat,Jetty等)。

3、Advisory Message 

ActiveMQ 支持Advisory Messages,它允许你通过标准的JMS 消息来监控系统。

相关代码:

AdvisorySupport.getConsumerAdvisoryTopic()   

AdvisorySupport.getProducerAdvisoryTopic()   

AdvisorySupport.getDestinationAdvisoryTopic()   

AdvisorySupport.getExpiredTopicMessageAdvisoryTopic() 

AdvisorySupport.getExpiredQueueMessageAdvisoryTopic() 

AdvisorySupport.getNoTopicConsumersAdvisoryTopic()   

AdvisorySupport.getNoQueueConsumersAdvisoryTopic()   

4、XMPP(Jabber)协议

XMPP是一种基于XML的即时通信协议,在配置文件中通 过增加transportConnector来支持XMPP协议

<broker xmlns="http://activemq.org/config/1.0">

<transportConnectors>

<transportConnector name="xmpp"     uri="xmpp://localhost:61222"/>

</transportConnectors>

</broker>   

ActiveMQ提供了ActiveMQ messages和XMPP之间的双向桥接

5、Command Agent 

ActiveMQ支持Command Agent。在配置文件中,通过设置commandAgent来启用Command Agent

<commandAgent xmlns="http://activemq.org/config/1.0"/> 

启用了Command Agent的broker上会有一个来自Command Agent的连接,它同时订阅topic: ActiveMQ.Agent。

在你启动XMPP客户端,加入到ActiveMQ.Agent聊天室后,就可以同broker进行交谈了。

6、Visualization plugin 

ActiveMQ支持以broker插件的形式生成DOT文件(可以用agrviewer来查看),以图表的方式描述connections、 sessions、producers、consumers、destinations等信息。

配置方式如下:   

Xml代码  

<broker xmlns="http://activemq.org/config/1.0" brokerName="localhost" useJmx="true">

<plugins>   

<connectionDotFilePlugin  file="connection.dot"/>   

<destinationDotFilePlugin file="destination.dot"/>   

</plugins>   

</broker>   

摘自ActiveMQ_in_action
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: