1. JMS基本概念
JMS Java Message Service,Java消息服务,是Java EE中的一个技术
JSM定义了Java中访问消息中间件的接口,并没有给与实现,实现JMS接口的消息中间件称为JMS Provider,例如ActiveMQ.
JMS provider :
实现JMS接口和规范的消息中间件
JMS message :
JMS的消息
JMS producer :
消息生产者,创建和发送JMS消息的客户端应用
JMS cosumer :
消息消费者,接受和处理JMS消息的客户端应用
消息的消费可以采用以下两种方法之一:
- 同步消费 通过调用消费者的receive方法从目的地中显示提取消息,receive方法可以一直阻塞到消息到达
- 异步消费 客户可以为消费者注册一个消息监听器,以定义在消息到达时所采取的动作
JMS domains :
消息传递域,JMS规范中定义了两种消息传递域:点对点PTP消息传递域和发布/订阅消息传递域pub/sub
- 点对点的特点:
- 每个消息只能有一个消费者。
- 消息的生产者和消费者之间没有时间上的相关性。无论消费者在生产者发送消息的时候是否处于运行状态,它都可以提取消息。
- 发布/订阅消息传递域的特点
- 每个消息可以有多个消费者。
- 生产者和消费者之间有时间上的相关性。订阅一个主题的消费者只能消费自它订阅之后发布的消息。JMS规范允许客户创建持久订阅,这在一定程度上放松了时间上的相关性要求。持久订阅允许消费者消费它在未处于激活状态时发送的消息。
Connection Factory
连接工厂,用来创建连接对象,以连接到JMS的Provider
JMS Connection 封装了客户与JMS提供者之间的一个虚拟的链接
JMS Session 是生产和消费信息的一个单线程上下文
会话用于创建消息生产者、消息消费者和消息等。会话提供了一个事务性的上下文,在这个上下文中,一组发送和接收被组合到了一个原子操作中。
Destination 消息发送到目的地
Acknowledge 签收
Transaction 事务
JMS Client 用来收发消息的Java应用
网友评论