JMS:
Java消息服务(Java Message Service)应用程序接口,是JavaEE平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。
JMS规范:
JMS定义了Java中访问消息中心的接口,并没有给予实现,实现JSM接口的消息中心称为JMS Provider,例如ActiveMQ
几个关于JMS的概念:
1、JMS Provider:实现JMS接口和规范的消息中心
2、JMS Producer:消息生产者,创建和发送JMS消息的客户端应用
3、JMS Consumer:消息消费者,接收和处理JMS消息的客户端应用
4、JMS Message:JMS消息,分3个部分:
(1)消息头:每个消息头字段都有相应的getter和setter方法
(2)消息属性:如果需要除消息头字段以外的值,那么可以使用消息属性
(3)消息体:封装具体的消息数据
5、JMS Destination :消息目的地,包含 queue 和 topic
6、JMS Domain:消息传递域,JMS规范中定义了两种消息传递域,分别是点对点和发布/订阅消息传递域:
(1)点对点(point-to-point,简写PTP或P2P)消息传递域,该消息传递域发送的消息目的地称为队列(queue)
特点:
a、每个消息只能有一个消费者
b、消息的生产者和消费者之间没有时间上的相关性,无论消息消费者在提取消息的时候,消息生产者是否处于运行状态,消息消费者还是可以提取消息
(2)发布/订阅(publish/subscribe,简写pub/sub)消息传递域,该消息传递域发送的消息目的地称为主题(topic)
特点:
a、每个消息可以有多个消费者
b、生产者和消费者之间有时间上的相关性,订阅一个主题的消费者只能消费自它订阅之后发布的消息。
7、JMS Session :与JMS Provider所建立的会话,可设置事务,消息消费签收方式
网友评论