JMS与activemq--4.MQ类型对比/MQ技术选型(资料来源网络)
Posted dougest
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JMS与activemq--4.MQ类型对比/MQ技术选型(资料来源网络)相关的知识,希望对你有一定的参考价值。
(图片来源于网络)
扩展:
- ZeroMQ : 扩展性好,开发比较灵活,采用C语言实现,实际上他只是一个socket库的重新封装,如果我们做为消息队列使用,需要开发大量的代码
- RabbitMQ :结合erlang语言本身的并发优势,性能较好,但是不利于做二次开发和维护
-
ActiveMQ: 历史悠久的开源项目,已经在很多产品中得到应用,实现了JMS1.1规范,可以和spring-jms轻松融合,实现了多种协议,不够轻巧(源代码比RocketMQ多).,支持持久化到数据库,对队列数较多的情况支持不好,不过我们的项目中并不会建很多的队列.
- Redis 做为一个基于内存的K-V数据库,其提供了消息订阅的服务,可以当作MQ来使用,目前应用案例较少,且不方便扩展
- RocketMQ: 阿里巴巴的MQ中间件,在其多个产品下使用,并能够撑住双十一的大流量,他并没有实现JMS规范,使用起来很简单。部署由一个 命名服务(nameserver)和一个代理(broker)组成,nameserver和broker以及producer都支持集群,队列的容量受机器硬盘的限制,队列满后可以支持持久化到硬盘(也可以自己适配代码,将其持久化到NOSQL数据库中),队列满后会影响吞吐量,可以采用主备来保证稳定性,支持回溯消费,可以在broker端进行消息过滤.
技术选型确定因素:
- 技术成熟,流行程度高, 案例多,坑少
- 可面向Java二次开发,工具异常及时修改
- 开发成本低 ,最好和spring搭配使用
- 安全稳定,支持数据持久化
- 本项目不需要高并发,分布式,集群,大数据量
以上是关于JMS与activemq--4.MQ类型对比/MQ技术选型(资料来源网络)的主要内容,如果未能解决你的问题,请参考以下文章