1,JMS 抽象模型
JMS抽象模型总共有四大块,供应商 管理对象 消息 和客户端;
其中,供应商就是具体的实现服务!像ActiveMq等消息中间插件服务器;管理对象主要是用来定位和管理和供应商服务器之间的连接;消息就是我们需要传递的信息数据;客户端是我们具体做的业务层,主要用来生成消息发送到服务器和消费从服务器传来的消息;
2,供应商(消息中间插件服务器)
目前市场上有很多开源或者收费的消息中间插件;不一一列取。给一个链接可以参考;
http://www.open-open.com/53.htm;
3,Administered Object(JMS管理对象)
Destination:目标节点,是用来存储供应商为提供消息服务的节点位置!如果这个消息是队列消息那么这个目标节点就是队列节点,如果是主题消息就是主题节点;里面包含了Queue的名称 等等;
ConntionFactory:主要是用来管理Connection的!我们无论是将我们的消息发布给供应商还是从供应商消费、订阅消息 都需要获得和供应商的连接;
4,客户端
客户端就是业务程序员人员开发业务需要发送或者获得消息的应用或者组件!按照发送消息和接受消息分为两类:prouducer生产者和Consumer消费者;那么在JMS中什么才能称为消息?消息又有那些分类呢?我们是如何发送和接受消费消息的呢?
4.1什么是消息?
官网给的定义是: Messaging is a method of communication between software components or applications. 消息是应用软件或者组件程序之间的交流方式!
其实这句话并没有说出JMS 中Message的存在必要性;JMS Message核心价值在于他提供了异步的信息传输方式;再具体的业务场景中,一个业务流常常从发起到接受到处理再到终结这个过程中消耗最多的就是业务处理;如果采用同步信息传递我们必须等待业务处理完成之后返回响应给发起者这才会终止这个业务流;