JMS与MQ
1 JMS与MQ
1.1 JMS
JMS(Java Messaging Service)是Java平台上有关面向消息中间件(MOM)的技术规范,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发,中文称Java消息服务。JMS是一种与厂商无关的 API,用来访问消息收发系统消息;就像JDBC(Java Database Connectivity)可以用来访问许多不同关系数据库一样,JMS则提供同样与厂商无关的访问方法,以访问消息收发服务。
JMS是在Java标准化组织(JCP)内开发的标准(代号JSR 914)。2001年6月25日,发布了JMS 1.0.2b,2002年3月18日发布了JMS1.1,统一了消息域。
JMS规范约定了两种消息方式:P2P(Point To Point)和发布/订阅(Publish/Subscribe)。P2P是用来进行两个节点之间的点对点通信;发布/订阅则是用于一个发布者和多个订阅者之间的通信。
1.2 MQ
MQ是Message Queue的缩写,中文称消息队列,MQ是在消息的传输过程中保存消息的容器。消息管理器在将消息从它的源中继到它的目标时充当中间人;队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递它。
MQ有很多不同厂商和语言实现的产品,如Sun MQ、Microsoft MQ、IBM MQ的等商业产品;Java语言实现的MQ,则有ActiveMQ、基于JMS标准的OpenJMS,以及新近的迁移项目Jafka等开源项目。
1.3 二者关系
JMS是一个用于提供消息服务的技术规范,TA制定了在整个消息服务提供过程中的所有数据结构和交互流程。而MQ则是消息队列服务,是面向消息中间件(MOM)的最终实现,是真正的服务提供者;MQ的实现可以基于JMS,也可以基于其他规范或标准。
2MQ产品介绍
2.1ActiveMQ
2.2OpenJMS
2.3Jafka
还没有评论,来说两句吧...