`

Apache ActiveMQ教程(三)

    博客分类:
  • JMS
阅读更多
Apache ActiveMQ教程(三)
2008-06-03 14:26

六、Publisher/Subscriber(发布/订阅者)消息模式开发流程

1、订阅者(Subscriber)开发流程(TopicListener.java):

1.1 实现MessageListener接口:

onMessage()方法中监听发布者发出的消息队列,并做相应处理。

1.2 创建Connection

根据urluserpassword创建一个jms Connection

1.3 创建Session

connection的基础上创建一个session,同时设置是否支持事务和ACKNOWLEDGE标识。

1.4 创建Topic

       创建2Topic topictest.messages用于接收发布者发出的消息,topictest.control用于向发布者发送消息,实现双方的交互。

1.5 创建consumerproducer对象:

       根据topictest.messages创建consumer,根据topictest.control创建producer

1.6 接收处理消息:

       onMessage()方法中,对收到的消息进行处理,可直接简单在本地显示消息,或者根据消息内容不同处理对应的业务逻辑(比如:数据库更新、文件操作等等),并且可以使用producer对象将处理结果返回给发布者。

2、发布者(Publisher)开发流程(TopicPublisher.java):

2.1 实现MessageListener接口:

onMessage()方法中接收订阅者的反馈消息。

2.2 创建Connection

根据urluserpassword创建一个jms Connection

2.3 创建Session

connection的基础上创建一个session,同时设置是否支持事务和ACKNOWLEDGE标识。

2.4 创建Topic

       创建2Topictopictest.messages用于向订阅者发布消息,topictest.control用于接收订阅者反馈的消息。这2topic与订阅者开发流程中的topic是一一对应的。

2.5 创建consumerproducer对象:

       根据topictest.messages创建publisher

根据topictest.control创建consumer,同时监听订阅者反馈的消息。

2.6 给所有订阅者发送消息,并接收反馈消息:

       示例代码中,一共重复10轮操作。

每轮先向所有订阅者发送2000个消息;

然后堵塞线程,开始等待;

最后通过onMessage()方法,接收到订阅者反馈的“REPORT”类信息后,才print反馈信息并解除线程堵塞,进入下一轮。

注:可同时运行多个订阅者测试查看此模式效果

分享到:
评论
1 楼 rosen 2009-06-25  
比较失望的文章,好歹有个代码吧,没代码也给个链接吧。

相关推荐

    Apache+ActiveMQ教程

    通过阅读提供的"Apache+ActiveMQ教程.pdf",你可以更深入地学习如何利用这些功能来优化你的系统架构。 总的来说,Apache ActiveMQ是一个强大且灵活的消息中间件,它与Spring的无缝集成使开发人员能够构建健壮、高效...

    Apache_ActiveMQ教程

    Apache ActiveMQ是一种开源的、支持多协议的、可运行于任何JVM的高性能消息中间件,它实现了Java消息服务(JMS)规范,并支持J2EE1.4以上版本。ActiveMQ的主要优势包括支持多种语言的客户端(如Java、C、C++、AJAX、...

    Apache ActiveMQ教程 JMS 整合Tomcat

    ### Apache ActiveMQ与JMS整合Tomcat:深入解析与实践 #### 一、Apache ActiveMQ:强大而灵活的开源消息中间件 Apache ActiveMQ作为一款成熟的开源消息中间件,不仅遵循了JMS 1.1规范,还兼容J2EE 1.4以上的标准,...

    apache-activemq-5.11.2 附全解教程

    在本教程中,我们将深入探讨Apache ActiveMQ 5.11.2版本的核心特性和使用方法。 首先,ActiveMQ作为消息队列服务,它的主要功能是帮助应用程序之间进行异步通信,通过解耦发送者和接收者,提高了系统的可扩展性和...

    Apache_ActiveMQ教程.docx

    Apache ActiveMQ 是一款开源的消息中间件,遵循Java消息服务(JMS)1.1规范,兼容J2EE1.4及以上版本。它以其强大的特性和优势,在IT领域中被广泛使用,包括支持多种语言的客户端,如Java、C、C++、AJAX和...

    Apache-ActiveMQ教程.docx

    Apache ActiveMQ 是一个开源的消息中间件,它实现了Java消息服务(JMS)1.1规范,适用于J2EE 1.4及更高版本的环境。ActiveMQ因其广泛的语言支持(包括Java、C、C++、AJAX、ACTIONSCRIPT等)、多协议支持(如STOMP、...

    apache-activemq-5.15.8-bin.zip

    Apache ActiveMQ是开源的、基于Java消息服务(JMS)的应用服务器,它是Apache软件基金会的一部分。这个"apache-activemq-5.15.8-bin.zip"文件包含了ActiveMQ的可执行版本,用于在本地计算机上安装和运行ActiveMQ服务...

    Apache_ActiveMQ教程.doc

    Apache ActiveMQ 是一款开源的消息中间件,遵循Java消息服务(JMS)1.1规范,兼容J2EE1.4及以上版本。它可以在任何Java虚拟机(JVM)上运行,适应各种Web容器,提供了丰富的客户端支持,包括Java、C、C++、AJAX和...

    ActiveMQ教程+配置[归纳].pdf

    Apache ActiveMQ 是一款开源的、基于 Apache 2.0 许可证发布的消息中间件,它遵循Java消息服务(JMS)1.1和J2EE 1.4规范。作为最流行和强大的消息中间件之一,ActiveMQ 提供了多种语言和协议的支持,如Java、C、C++...

    apache-activemq-5.15.2下的demo

    在你提到的"apache-activemq-5.15.2"版本中,包含了"webapps-demo"这个目录,这是一个非常有价值的资源,它为开发者提供了丰富的示例和教程,帮助他们更好地理解和使用ActiveMQ。 1. **ActiveMQ基本概念**: - **...

    apache-activemq-5.18.1-bin.tar.gz

    4. **docs目录**:包含了ActiveMQ的文档,包括API参考、用户指南和教程。 5. **data目录**:默认情况下,这是ActiveMQ存储消息和持久化数据的位置。你可以根据需要修改`activemq.xml`来指定不同的数据存储路径。 6...

    ActiveMQ消息服务器 v6.0.1.zip

    ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息传递标准(JMS,Java Message Service),用于在分布式系统中实现可靠的消息传递。在本文中,我们将深入探讨ActiveMQ v6.0.1的核心特性、应用...

    CentOS安装Activemq图文教程

    "CentOS安装Activemq图文教程" 本文将详细介绍如何在CentOS系统中安装和配置Activemq,并实现开机启动的设置。 一、下载和安装Activemq 首先,我们需要从Apache官方网站下载Activemq的安装包。在浏览器中访问...

    JMS+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>...

    ActiveMQ5.12.1 安装与配置.docx

    ActiveMQ 是Apache旗下的一款开源消息中间件,它支持多种消息协议,如AMQP、OpenWire、STOMP等,并且提供丰富的特性和功能,包括持久性消息存储、事务支持、集群能力等。ActiveMQ广泛应用于分布式系统中,帮助解决...

    ActiveMQ教程

    ActiveMQ 是一款由Apache软件基金会开发的开源消息中间件,广泛应用在各种企业级环境中。它遵循Java消息服务(JMS)1.1规范,并且兼容J2EE 1.4及以上版本,使得它可以在多种Java虚拟机(JVM)和Web容器中运行。...

    ActiveMQ教程+配置[参照].pdf

    Apache ActiveMQ 是一款高度活跃且功能丰富的开源消息中间件,基于Apache 2.0许可发布。作为Java消息服务(JMS)提供商,ActiveMQ 提供了多种消息传递模式,包括点对点和发布/订阅模式,使其适用于各种分布式系统中...

    JMS ACTIVEMQ 教程文档

    Apache ActiveMQ 是一个开源的JMS提供商,它是Apache软件基金会的一部分,也是最广泛使用的JMS实现之一。ActiveMQ提供了多种协议支持,包括开放消息传递协议(STOMP)、AMQP、MQTT等,使得它能够与各种不同类型的...

Global site tag (gtag.js) - Google Analytics