JMS是JavaEE 规范中提出的消息中间件服务(Java Message Service™)规范,提供应用程序间异步或同步的消息传递和管理服务,Apusic 应用服务器中包含了高效、可靠的消息服务。Apusic应用服务器中的消息服务接口完全遵循JMS API规范。提高了企业应用中各组件的可移植性、松耦合特性,同时更加高效可靠;为分布式企业应用异步交换关键业务数据和事件提供了可靠而灵活的服务。
Apusic消息服务提供对消息队列(Queue)和消息主题(Topic)的管理,消息的发送由消息服务负责完成,原理如下:
Computer A,B,C 为提供消息服务的Apusic应用服务器,每一个 Apusic 应用服务器称为一个Router,他们之间的连接被称为Connector,客户端进行消息发送时直接与Computer A 连接,客户端要把消息传送到Computer B的队列时,只需指明接收消息的主机名和队列名,然后发送消息即可,Computer A 中的消息服务将会查找配置文件中的设置,如从A 到B间有无通路连通,假如它们之间有通路连接,消息服务就会寻找这些通路中最短的路径发送消息到指定服务器(Computer B)的指定队列,假如A 到B间无有效连接,消息将被保存在某一连通的服务器上,待有有效通路之后再发送消息。
Apusic应用服务器提供了两个主要的消息服务方面的特性:
全局事务
Apusic应用服务器提供了一个作为事务性资源管理器的JMS 提供者(Provider),允许从JSP,Servlet, EJB 等应用组件中对消息服务进行事务性的访问。 对消息的发送和接收可以和对其他资源的操作一起参与到一个JTA事务中
Message-driven Bean
J2EE™1.3规范中提供的Enterprise Bean类型,Message-driven Bean,使多层分布式企业应用可以异步地使用消息