简介:
JSM是java消息服务应用程序接口,是一个java平台中面向消息中间件(MOM)的API,用于两个应用程序之间,或分布式系统中发送消息,进行异步通讯。
体系架构:
JSM由以下元素组成:
JSM提供者、JMS客户、JMS生产者、JMS消息、JMS队列、JMS主题
- JMS提供者:连接面向消息中间件的JSM接口的一个实现。提供者可以是JAVA平台的JSN实现,也可以是非java平台的面向消息中间件的适配器。
- JMS客户:生产或消费基于消息的java的应用程序或对象。
- JMS生产者:创建并发送消息的JMS客户。
- JMS消息:包括可以在JMS可以之间传递的数据对象。
- JMS队列:一个容纳那些被发送的等待阅读的消息的区域。与队列名字所暗示的意思不同,消息的接受顺序不一定是消息发送的顺序相同。一旦一个消息被阅读,该消息将被从队列中移走。
- JMS主题:一种支持发送消息给多个订阅者的机制。
对象模型:
连接工厂、JMS连接、JMS会话、JMS目的、JMS生产者和消费者、JMS消息类型
- 连接工厂:由管理员创建并绑定到JND树中。客户端使用JND查找连接工厂,然后利用连接工厂创建一个JMS连接。
- JMS连接:表示JMS客户端和服务器之间的一个活动的连接,是由客户端通过调用连接工厂的方法建立连接的。
- JMS会话:表示JMS客户与JMS服务器之间的会话状态。JMS会话建立在JMS连接之上,表示客户与服务器之间的一个会话线程。
- JMS目的:JMS目的又称为消息队列,是实际的消息源
- JMS生产者和消费者:生产者(Message producer)和消费者(Message Consumer)对象由Session对象创建,用于发送和接受消息。
- JMS消息类型:JMS消息有两种类型
- 点对点(point to point):消息分发给一个单独的使用者。点对点消息往往与队列相关联
- 发布/订阅(publish/Subscribe):发布/订阅消息系统支持以恶搞时间驱动模型,消息生产者和消费者都参与消息的传递。生产者发布事件,而使用者订阅感兴趣的事件,并使用该事件。该类型消息一般与特定的主题关联。