关键字: MOM JMS activemq 异步消息 消息中间件 jconsole mbean
什么是消息中间件
面向消息的中间件:Message-oriented Middleware, MOM
基本功能:将信息以消息的形式,从一个应用程序传送到另一个或多个应用程序。
主要特点:
- 消息异步接受,类似手机短信的行为,消息发送者不需要等待消息接受者的响应,减少软件多系统集成的耦合度;
- 消息可靠接收,确保消息在中间件可靠保存,只有接收方收到后才删除消息,多个消息也可以组成原子事务。
消息中间件的主要应用场景:
公司在发展过程中,开发(或者购买了)多套企业信息系统,比如财务系统,人事系统,在线销售系统,运营系统等。
这些系统生产/消费公司的各种业务数据。
公司需要将这些系统集成(整合),比如让在线销售系统的订单数据输入到财务系统中。
类似应用的一般系统需求是:
- 可靠传输,数据不能丢失,有的时候,也会要求不能重复传输;
- 异步传输,否则各个系统同步发送接受数据,互相等待,造成系统瓶颈。
公司可以为此开发自己的软件服务,代价会比较大,现在一般使用已经成型的
消息中间件。
目前比较知名的消息中间件:
- IBM MQSeries
- BEA WebLogic JMS Server
- Oracle AQ
- Tibco
- SwiftMQ
- AcitveMQ:是免费的java实现的消息中间件
什么是JMS
JMS Java Message Service,Java消息服务。
和消息中间件的关系,类似于DBMS和JDBC的关系。
JMS是个标准,见:
java.sun.com/products/jms/目前版本是1.1。
JMS是J2EE(JavaEE)标准的一部分。
ActiveMQ的简单使用
简介
ActiveMQ,网址:
activemq.apache.org/目前是Apache下的一级项目。
免费开源由java编写符合JMS1.1标准的消息中间件。
另外,它也支持通过除java语言外的语言的使用:
- PHP
- C/C++
- C#
- Ruby
- Perl
- Python
简单使用
本文操作系统Windows XP。
SUN JDK 1.6.0_03。
启动:
进入${active-mq}\bin目录。
运行
activemq.bat
检查安装是否成功:
命令行执行如下命令
显示如下内容表示启动成功:
- TCP 0.0.0.0:61616 0.0.0.0:0 LISTENING
创建队列:
最简单的办法是使用java6提供的jconsole,使用方法见:
marshal.iteye.com/blog/138879在jconsole中使用activemq提供的MBean创建队列。
向ActiveMQ发送消息:
接收信息:
使用该队列的browse方法获取。
删除队列:
使用broker/操作/removeQueue方法删除。
其他操作队列的方法:
使用JMS API,发送和接收队列、主题中的消息,可以结合Spring简化开发。
第三方图形化客户端,比如hermesjms:
www.hermesjms.com,是免费的java swing编写的JMS客户端。
还有其他基于web的客户端。
分享到:
相关推荐
总结来说,ActiveMQ作为一款强大的消息中间件,它为Java开发者提供了丰富的特性和广泛的集成能力,帮助构建更稳定、可扩展的分布式系统。其灵活的工作模式和强大的管理特性使得它在企业级应用中得到了广泛应用。
关闭AUTO_ACKNOWLEDGE可以使消息的确认交由应用程序自己控制,这有利于实现复杂的错误处理逻辑和消息重试机制。 通过这些知识点,我们可以更好地理解ActiveMQ的工作原理及其在不同场景下的应用和配置策略,为进行...
- **3-1 JMS规范**:Java消息服务(Java Message Service, JMS)是Java平台中关于面向消息中间件(MOM)的标准客户端接口,它的主要目的是让Java应用程序能够与实现JMS的应用程序服务器通信。JMS定义了两种消息模型...
描述中提到"消息中间件activemq的入门demo",这意味着这个项目是为初学者设计的,旨在介绍ActiveMQ的基本用法和概念。"集成了spring管理jsm的初始化管理"这部分表明这个项目不仅涉及ActiveMQ,还利用了Spring框架来...
综上所述,这个例子提供了一个全面的实践,涵盖了Spring MVC、JMS和ActiveMQ的集成,帮助开发者理解如何在实际项目中使用消息中间件实现异步处理和解耦。通过学习这个示例,你可以了解到如何在Spring MVC环境中配置...
通过消息传递和消息排队模型,消息中间件可以在分布式环境下扩展进程间的通信,支持应用程序或组件之间进行可靠的异步通信,从而降低系统间的耦合度,提高系统的可扩展性和可用性。 在分布式系统中,消息中间件的...
作为一款成熟的面向消息的中间件(MOM),ActiveMQ支持多种消息传输协议,包括AMQP、STOMP、MQTT等,适用于不同的应用场景。 #### 二、ActiveMQ服务器宕机处理 ActiveMQ通过灵活的存储机制确保了即使在服务器宕机的...
1. 面向消息的中间件(Message-Oriented Middleware, MOM):如IBM的WebSphere MQ、Apache ActiveMQ等,主要关注消息的可靠传输和事务处理。 2. 目录服务中间件:如LDAP(Lightweight Directory Access Protocol),...
本项目正是利用Spring平台来集成开源消息队列中间件ActiveMQ,以实现消息的发送和接收功能,同时也对消息队列的两种主要工作模式——生产者-消费者模式和发布-订阅模式进行了深入探讨。 首先,ActiveMQ是Apache软件...
面向消息的中间件(Message Oriented Middleware,MOM)是指利用高效可靠的消息传递机制进行与平台无关的通信的系统,ActiveMQ就是这样的一个系统,能够为企业级应用提供高效、可扩展、稳定和安全的消息通信功能。...
- **Message**:消息对象,包括消息头(必填)、属性(可选)和消息体(可选),有五种类型:TextMessage、MapMessage、ByteMessage、StreamMessage和ObjectMessage。 3. ActiveMQ的安装与运行 ActiveMQ的安装非常...
这个模块允许我们轻松地与消息中间件如ActiveMQ进行交互,从而实现解耦和异步处理。下面将详细介绍这个整合过程中的关键知识点: 1. **JMS(Java Message Service)**:JMS是一个标准,定义了API,使得应用程序可以...
在IT行业中,消息队列(Message Queue)是一种重要的中间件技术,它允许应用程序之间通过异步通信进行数据交换。在本教程中,我们将探讨如何整合Spring框架与ActiveMQ消息队列,实现前后台的消息传递。这有助于提升...
分布式消息通信ActiveMQ1是关于消息中间件ActiveMQ的介绍,它主要用于协调应用程序之间的消息传输。ActiveMQ作为一款开源的、基于Java的消息中间件,遵循Java消息服务(JMS)规范,提供高可靠的消息传递功能。 首先...
标题中的“ActiveMQ与Spring集成实例之使用Maven构建”是指在Java开发环境中,通过Maven构建工具将Apache ActiveMQ消息中间件与Spring框架整合在一起的实际操作案例。这个主题涵盖了几大关键知识点: 1. **Apache ...
ActiveMQ实战手册以介绍JMS和ActiveMQ的操作及配置为主,JMS(Java Message Service)是Java平台中对于面向消息中间件(MOM)的一种标准的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。...
- Web客户端的JavaScript代码,使用Ajax进行WebSocket连接和消息订阅。 理解这些整合方式可以帮助开发者充分利用ActiveMQ的特性,提高系统的可扩展性和响应性,同时降低复杂性。在实际项目中,根据具体需求选择合适...
ActiveMQ的特点包括高性能、可伸缩性、可靠性、支持持久化存储和消息分组等。使用ActiveMQ的理由有很多,它能够帮助开发者降低系统的耦合度,提供异步通信机制,以及提高系统的可扩展性。ActiveMQ适用于多种场景,...
- **定义**:ActiveMQ 是一款开源的消息中间件,它遵循 JMS 1.1 和 MQTT 规范,提供了高性能、高可靠性的消息传递服务。 - **特性**:ActiveMQ 支持多种消息传递模式(例如点对点、发布/订阅),并且能够处理持久化...