Java消息服务(JMS)是一组Java API。这组API定义了创建、发送、接收、读取消息的服务。消息是软件组件或应用之间的一种通信方法。消息客户可以向其他客户发送消息,也可以接收来自其他客户的消息。每一个客户和一个消息代理相连,由消息代理提供创建、发送、接收、读取消息的服务。
消息实现了松散耦合的分布式通信。组件发送消息到目的,消息接收者从该目的提取消息。但是,消息的发送和接收却不是同时进行的。实际上,发送者不必去了解接收者,同样接收者也不必了解发送者,它们只需要知道消息格式和消息目的。
JMS有最主要的两大特点,异步和可靠。
q 异步:JMS提供者将到来的消息发送给客户,客户不用发送请求接收消息。
q 可靠:JMS API确保消息传送一次而且只传送一次。可靠性差的应用程序可能会丢失消息或者重复接收消息。
不同的厂商提供不同的JMS实现,本书选用了Apache基金会下的开源项目ActiveMQ作为应用程序的JMS服务。ActiveMQ可以在http://activemq.apache.org网站上下载到。是以一个jar包的形式提供的。