1、订阅者(Subscriber)开发流程(TopicListener.java):
1.1
实现MessageListener接口:
在onMessage()方法中监听发布者发出的消息队列,并做相应处理。
1.2
创建Connection:
根据url,user和password创建一个jms
Connection。
1.3
创建Session:
在connection的基础上创建一个session,同时设置是否支持事务和ACKNOWLEDGE标识。
1.4
创建Topic:
创建2个Topic, topictest.messages用于接收发布者发出的消息,topictest.control用于向发布者发送消息,实现双方的交互。
1.5
创建consumer和producer对象:
根据topictest.messages创建consumer,根据topictest.control创建producer。
1.6 接收处理消息:
在onMessage()方法中,对收到的消息进行处理,可直接简单在本地显示消息,或者根据消息内容不同处理对应的业务逻辑(比如:数据库更新、文件操作等等),并且可以使用producer对象将处理结果返回给发布者。
2、发布者(Publisher)开发流程(TopicPublisher.java):
2.1
实现MessageListener接口:
在onMessage()方法中接收订阅者的反馈消息。
2.2
创建Connection:
根据url,user和password创建一个jms
Connection。
2.3
创建Session:
在connection的基础上创建一个session,同时设置是否支持事务和ACKNOWLEDGE标识。
2.4
创建Topic:
创建2个Topic,topictest.messages用于向订阅者发布消息,topictest.control用于接收订阅者反馈的消息。这2个topic与订阅者开发流程中的topic是一一对应的。
2.5
创建consumer和producer对象:
根据topictest.messages创建publisher;
根据topictest.control创建consumer,同时监听订阅者反馈的消息。
2.6
给所有订阅者发送消息,并接收反馈消息:
示例代码中,一共重复10轮操作。
每轮先向所有订阅者发送2000个消息;
然后堵塞线程,开始等待;
最后通过onMessage()方法,接收到订阅者反馈的“REPORT”类信息后,才print反馈信息并解除线程堵塞,进入下一轮。
注:可同时运行多个订阅者测试查看此模式效果
相关推荐
通过阅读提供的"Apache+ActiveMQ教程.pdf",你可以更深入地学习如何利用这些功能来优化你的系统架构。 总的来说,Apache ActiveMQ是一个强大且灵活的消息中间件,它与Spring的无缝集成使开发人员能够构建健壮、高效...
Apache ActiveMQ是一种开源的、支持多协议的、可运行于任何JVM的高性能消息中间件,它实现了Java消息服务(JMS)规范,并支持J2EE1.4以上版本。ActiveMQ的主要优势包括支持多种语言的客户端(如Java、C、C++、AJAX、...
### Apache ActiveMQ与JMS整合Tomcat:深入解析与实践 #### 一、Apache ActiveMQ:强大而灵活的开源消息中间件 Apache ActiveMQ作为一款成熟的开源消息中间件,不仅遵循了JMS 1.1规范,还兼容J2EE 1.4以上的标准,...
在本教程中,我们将深入探讨Apache ActiveMQ 5.11.2版本的核心特性和使用方法。 首先,ActiveMQ作为消息队列服务,它的主要功能是帮助应用程序之间进行异步通信,通过解耦发送者和接收者,提高了系统的可扩展性和...
Apache ActiveMQ 是一款开源的消息中间件,遵循Java消息服务(JMS)1.1规范,兼容J2EE1.4及以上版本。它以其强大的特性和优势,在IT领域中被广泛使用,包括支持多种语言的客户端,如Java、C、C++、AJAX和...
Apache ActiveMQ 是一个开源的消息中间件,它实现了Java消息服务(JMS)1.1规范,适用于J2EE 1.4及更高版本的环境。ActiveMQ因其广泛的语言支持(包括Java、C、C++、AJAX、ACTIONSCRIPT等)、多协议支持(如STOMP、...
Apache ActiveMQ是开源的、基于Java消息服务(JMS)的应用服务器,它是Apache软件基金会的一部分。这个"apache-activemq-5.15.8-bin.zip"文件包含了ActiveMQ的可执行版本,用于在本地计算机上安装和运行ActiveMQ服务...
Apache ActiveMQ 是一款开源的消息中间件,遵循Java消息服务(JMS)1.1规范,兼容J2EE1.4及以上版本。它可以在任何Java虚拟机(JVM)上运行,适应各种Web容器,提供了丰富的客户端支持,包括Java、C、C++、AJAX和...
Apache ActiveMQ 是一款开源的、基于 Apache 2.0 许可证发布的消息中间件,它遵循Java消息服务(JMS)1.1和J2EE 1.4规范。作为最流行和强大的消息中间件之一,ActiveMQ 提供了多种语言和协议的支持,如Java、C、C++...
4. **docs目录**:包含了ActiveMQ的文档,包括API参考、用户指南和教程。 5. **data目录**:默认情况下,这是ActiveMQ存储消息和持久化数据的位置。你可以根据需要修改`activemq.xml`来指定不同的数据存储路径。 6...
"CentOS安装Activemq图文教程" 本文将详细介绍如何在CentOS系统中安装和配置Activemq,并实现开机启动的设置。 一、下载和安装Activemq 首先,我们需要从Apache官方网站下载Activemq的安装包。在浏览器中访问...
<a href=http://activemq.apache.org/version-5-getting-started.html >http://activemq.apache.org/version-5-getting-started.html</a> <a href=http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html>...
ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息传递标准(JMS,Java Message Service),用于在分布式系统中实现可靠的消息传递。在本文中,我们将深入探讨ActiveMQ v6.0.1的核心特性、应用...
ActiveMQ 是Apache旗下的一款开源消息中间件,它支持多种消息协议,如AMQP、OpenWire、STOMP等,并且提供丰富的特性和功能,包括持久性消息存储、事务支持、集群能力等。ActiveMQ广泛应用于分布式系统中,帮助解决...
ActiveMQ 是一款由Apache软件基金会开发的开源消息中间件,广泛应用在各种企业级环境中。它遵循Java消息服务(JMS)1.1规范,并且兼容J2EE 1.4及以上版本,使得它可以在多种Java虚拟机(JVM)和Web容器中运行。...
Apache ActiveMQ 是一款高度活跃且功能丰富的开源消息中间件,基于Apache 2.0许可发布。作为Java消息服务(JMS)提供商,ActiveMQ 提供了多种消息传递模式,包括点对点和发布/订阅模式,使其适用于各种分布式系统中...
Apache ActiveMQ 是一个开源的JMS提供商,它是Apache软件基金会的一部分,也是最广泛使用的JMS实现之一。ActiveMQ提供了多种协议支持,包括开放消息传递协议(STOMP)、AMQP、MQTT等,使得它能够与各种不同类型的...
### Java消息中间件教程——ActiveMQ #### 一、课程安排与消息中间件的重要性 - **1-1 课程安排**:本课程旨在系统性地介绍ActiveMQ的各个方面,包括安装、使用、集群搭建等内容。 - **1-2 为什么使用消息中间件**...