JAVA消息队列
1
近期公司项目中,听同事提起MQ、JMS,因为之前没有使用过不太了解,所以抽出半天时间学习下,了解下相关概念、功能及其用途。便于再次与人沟通时可以言之有物,后续工作中遇到了,可立马上手,提高工作效率。
学习过程分为三个步骤:###
- 1 查找资料
- 2 实验实践
- 3 归纳总结
2
###查找资料### 推荐两篇博客,内容不错。
- 1 JMS(Java消息服务)入门教程 ,比较适合了解基本知识,包括概念、分类、用途及其原理。
- 2 消息队列MQ技术的介绍和原理,介绍了消息队列MQ的基本知识点。 此处不再对技术内容进行复制粘贴,仅提供学习思路。首先用what、how、why提出自己心中感兴趣的几个问题,然后在到资料中找出想要的答案。例如:什么是Java消息服务?MQ? 为什么要有消息服务?优点是什么?消息服务是如何实现的? JSM Java Message Service, MQ Message Queue
3
####实验#### 通过上面的快速阅读和详细阅读之后,已经在概念上了解了,下面通过一个实验对概念和原理进行深入的理解,了解其用途及其适用范围。
- 1 环境介绍 apache-tomcat-7.0.61、apache-activemq-5.6.0、eclipse neon、jdk 1.8.0 ;
- 2 实验代码工程链接地址 https://github.com/abshawn/JMSProject ,可以从此处下载代码,在本地部署查看效果。
- 3 实验效果截图 通过activemq可以监控到消息队列的内容。
4
###归纳总结### ** JMS “ 一个中心,两种模式,三步实现”**
- 1 以 消息服务器为中心 消息生产者 通过客户端发消息给消息服务器; 消息消费者通过消息服务器接收消息;
- 2 两种消息发送模型 两种消息发送模型规范:点对点、发布订阅 ;
- 3 实现方法分为三步 3.1、 统一消息服务器,建立连接Connections ; 3.2 、通过连接建立队列会话session; 3.3 、准备就绪后,执行 生产者 发消息和消费者 接消息(异步)。 **优点 ** 解耦合、异步