- MOM:企业消息系统,即面向消息的中间件,提供了以松散耦合的灵活方式集成应用程序的一种机制。它们提供了基于存储和转发的应用程序之间的异步数据发送,即应用程序彼此不直接通信,而是与作为中介的MOM通信。
- Java Message Service:是Java平台上有关面向消息中间件的技术规范。JMS提供同样与厂商无关的访问的API,以访问消息收发服务
Provider/MessageProvider:生产者
Consumer/MessageConsumer:消费者
PTP:Point To Point,点对点通信消息模型
Pub/Sub:Publish/Subscribe,发布订阅消息模型
Queue:队列,目标类型之一,和PTP结合
Topic:主题,目标类型之一,和Pub/Sub结合
ConnectionFactory:连接工厂,JMS用它创建连接
Connnection:JMS Client到JMS Provider的连接
Destination:消息目的地,由Session创建
Session:会话,由Connection创建,实质上就是发送、接受消息的一个线程,因此生产者、消费者都是Session创建的
activeMQ就是支持jms规范的一个server 类似 JDBC(jms)与MySql(activeMQ)的关系
在没有JMS之前,程序员开发过程中,如果需要和MOM进行消息发送或接受的时候,需要根据不同的MOM进行不同的编码;相同的,有了JMS之后,代码被规范。
开源消息总线
消息形式
- 一种是点对点的,即一个生产者和一个消费者一一对应;
- 另一种是发布/订阅模式,即一个生产者产生消息并进行发送后,可以由多个消费者进行接收。
五种不同的消息正文格式,以及调用的消息类型,允许你发送并接收以一些不同形式的数据
StreamMessage -- Java原始值的数据流
MapMessage--一套名称-值对
· TextMessage--一个字符串对象 #常用#
· ObjectMessage--一个序列化的 Java对象
· BytesMessage--一个字节的数据流