通知消息(Advisory Message)
简单的说就是实现了ActiveMQ的broker上各种操作的记录跟踪和通知。
使用这个功能,你可以实时的知道broker上
1. 创建或销毁了连接,
2. 添加或删除了生存者或消费者,
3. 添加或删除了主题或队列,
4. 有消息发送和接收,
5. 什么时候有慢消费者,
6. 什么时候有快生产者
7. 什么时候什么消息被丢弃
8. 什么时候broker被添加到集群(主从或是网络连接)
这个机制是ActiveMQ对JMS协议的重要补充,也是基于JMS实现的ActiveMQ的可管理性的一部分。多个ActiveMQ的相互协调和互操作的基础设置。
分类 |
Advisory |
说明 |
DataStruct类型 |
客户端连接 |
ActiveMQ.Advisory.Connection |
客户端连接、或终止时[Connection.start()、 |
ConnectionInfo |
|
ActiveMQ.Advisory.Producer.Queue |
当生产者被创建、或终止时 |
ProducerInfo |
|
ActiveMQ.Advisory.Producer.Topic |
|
|
|
ActiveMQ.Advisory.Consumer.Queue |
当消费者被创建、或终止时 |
|
|
ActiveMQ.Advisory.Consumer.Topic |
|
|
队列相关 |
ActiveMQ.Advisory.Topic |
任何Topic被创建或者销毁时 |
DestinationInfo |
|
ActiveMQ.Advisory.Queue |
|
|
消息相关 |
ActiveMQ.Advisory.MessageConsumed.Queue |
当消息被成功消费时[消息应答成功] |
ActiveMQMessage |
|
ActiveMQ.Advisory.MessageConsumed.Topic |
|
|
public static void testAdvisory4() throws Exception {
ConnectionFactory factory = new ActiveMQConnectionFactory("tcp://localhost:61616");
Connection connection = factory.createConnection();
connection.start();
final Session session = connection.createSession(false/*支持事务*/, Session.AUTO_ACKNOWLEDGE);
Destination queue = AdvisorySupport.getMessageConsumedAdvisoryTopic(session.createQueue("test_123"));
MessageConsumer consumer = session.createConsumer(queue);
consumer.setMessageListener(new MessageListener() {
@Override
public void onMessage(Message message) {
System.out.println(message);
ActiveMQMessage consumedMessage = (ActiveMQMessage) ((ActiveMQMessage) message).getDataStructure();
System.out.println("队列:[" + consumedMessage.getDestination() + "],消息:[id="
+ consumedMessage.getMessageId() + "]被成功接收。");
}
});
}
相关推荐
NULL 博文链接:https://sswh.iteye.com/blog/1974156
赠送jar包:activemq-protobuf-1.1.jar; 赠送原API文档:activemq-protobuf-1.1-javadoc.jar; 赠送源代码:activemq-protobuf-1.1-sources.jar; 包含翻译后的API文档:activemq-protobuf-1.1-javadoc-API文档-...
NULL 博文链接:https://sswh.iteye.com/blog/1974169
activemq-pool-5.8.0-sources.jar
NULL 博文链接:https://sswh.iteye.com/blog/1974131
activemq-cpp-library-3.9.5编译的C++库文件,支持vs2015,vs2017,包括了依赖的库文件和头文件,可以在项目中直接使用。
赠送jar包:activemq-core-5.7.0.jar; 赠送原API文档:activemq-core-5.7.0-javadoc.jar; 赠送源代码:activemq-core-5.7.0-sources.jar; 包含翻译后的API文档:activemq-core-5.7.0-javadoc-API文档-中文...
赠送jar包:activemq-core-5.7.0.jar; 赠送原API文档:activemq-core-5.7.0-javadoc.jar; 赠送源代码:activemq-core-5.7.0-sources.jar; 包含翻译后的API文档:activemq-core-5.7.0-javadoc-API文档-中文...
activemq-all-5.12.0-sources.jar
Apache ActiveMQ是Apache软件基金会的一个开源项目,是一个基于消息的通信中间件。ActiveMQ是JMS的一个具体实现,支持JMS的两种消息模型。ActiveMQ使用AMQP协议集成多平台应用,使用STOMP协议通过websockets在Web...
activemq-jms-pool-5.14.4.jar
赠送jar包:activemq-protobuf-1.1.jar; 赠送原API文档:activemq-protobuf-1.1-javadoc.jar; 赠送源代码:activemq-protobuf-1.1-sources.jar; 包含翻译后的API文档:activemq-protobuf-1.1-javadoc-API文档-...
其实activemq-web-console完全可以和activemq-broker分开来部署。 activemq-web-console包含3个apps, 1.一个是admin,用来显示和管理所有的queue、topic、connection等等。 2.一个是demo,有一些使用jms和activemq...
标签:activemq-web-console-5.8.0-sources.jar,activemq,web,console,5.8.0,sources,jar包下载,依赖包
标签:activemq-web-console-5.2.0-sources.jar,activemq,web,console,5.2.0,sources,jar包下载,依赖包
标签:activemq-web-console-5.2.0-javadoc.jar,activemq,web,console,5.2.0,javadoc,jar包下载,依赖包
标签:activemq-jms-pool-5.10.0-javadoc.jar,activemq,jms,pool,5.10.0,javadoc,jar包下载,依赖包
标签:activemq-kahadb-store-5.10.0-sources.jar,activemq,kahadb,store,5.10.0,sources,jar包下载,依赖包
标签:activemq-jms-pool-5.10.0.jar,activemq,jms,pool,5.10.0,jar包下载,依赖包
标签:activemq-web-4.0-M3.jar.zip,activemq,web,4.0,M3,jar.zip包下载,依赖包