博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ActiveMQ、RabbitMQ、ZeroMQ比较
阅读量:6806 次
发布时间:2019-06-26

本文共 1137 字,大约阅读时间需要 3 分钟。

hot3.png

​​​​​​一、定义对比

  • ActiveMQ

      ActiveMQ是Apache开发的开源消息中间件,Java实现,基于JMS1.1及J2EE 1.4规范。

  • RabbitMQ

     RabbitMQ 是由 LShift 提供的一个 Advanced MessageQueuing Protocol (AMQP) 的开源实现,由         以高性能、健壮以及可伸缩性出名的 Erlang 写成,因此也是继承了这些优点。

  • ZeroMQ

     ZeroMQ是由iMatix公司使用C语言开发的高性能消息中间件,是对socket的封装,在发送端存消息。

二、表格对比

  ActiveMQ RabbitMQ ZeroMQ
遵循规范 JMS1.1及J2EE 1.4 AMPQ ---
架构模型 消息代理架构Broker 消息代理架构Broker C/S架构
实现语言 Java Erlang C/C++
支持消息协议 Stomp AMPQ、Stomp等 ---
主要推动力量 Apache、Redhat Lshift、Vmware、SpringSource iMatix
支持编程语言 C,Java,Python C,Java,Python C,Java,Python
编程复杂度 复杂 简单 中等
持久化 支持 支持,不支持第三方数据库 发送端缓存
性能 Normal Normal High
内存使用率 High High Normal

三、附录

  • AMPQ

AMQP即Advanced Message Queuing Protocol (高级消息队列协议),主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP协议更多用在企业系统内,对数据一致性、稳定性和可靠性要求很高的场景,对性能和吞吐量的要求还在其次。(金融行业)

  • STOMP

STOMP即Simple (or Streaming) Text Orientated Messaging Protocol(简单(流)文本定向消息协议),它提供了一个可互操作的连接格式,允许STOMP客户端与任意STOMP消息代理(Broker)进行交互。STOMP协议由于设计简单,易于开发客户端,因此在多种语言和多种平台上得到广泛地应用。

STOMP协议的前身是TTMP协议(一个简单的基于文本的协议),专为消息中间件设计。

STOMP是一个非常简单和容易实现的协议,其设计灵感源自于HTTP的简单性。尽管STOMP协议在服务器端的实现可能有一定的难度,但客户端的实现却很容易。例如,可以使用Telnet登录到任何的STOMP代理,并与STOMP代理进行交互。

 

 

 

 

 

转载于:https://my.oschina.net/idea813/blog/1604038

你可能感兴趣的文章
【双标记线段树】bzoj1798维护序列seq
查看>>
C# Socks5
查看>>
Chrome浏览器Network面板http请求时间分析
查看>>
关于热部署-理解与总结
查看>>
Asp.net 根据IP地址获取跨网段mac地址函数【搜藏】
查看>>
h5 slider页面滑动相关问题
查看>>
PYTHON2.day08
查看>>
paste
查看>>
数据增强之图像旋转及坐标对应(附代码)
查看>>
C# 获取屏幕的大小
查看>>
sass语法(1)
查看>>
react use simditor
查看>>
ARM——I2C
查看>>
关于英语写作词源方面的。。
查看>>
垂直水平居中
查看>>
集合(二)栈和链表
查看>>
2-01模块分组,和主题
查看>>
转:深入了解bash与sh的区别
查看>>
WORD神操作!第一个技巧你就傻眼了!
查看>>
Linux shell编程学习笔记-----第六章变量和引用
查看>>