常用消息中间件比较
ActiveMQ | Joram | HornetQ | OpenMQ | MuleMQ | SonicMQ | RabbitMQ | ZeroMQ | |
关注度 | 高 | 中 | 中 | 中 | 低 | 低 | 高 | 中 |
成熟度 | 成熟 | 比较成熟 | 比较成熟 | 比较成熟 | 新产品无成功案例 | 成熟 | 成熟 | 不成熟 |
所属社区/公司 | Apache | OW2 | Jboss | Sun | Mule | Progress | ||
社区活跃度 | 高 | 中 | 中 | 低 | 高 | 低 | 高 | 低 |
文档 | 多 | 多 | 中 | 中 | 少 | 少 | 多 | 中 |
特点 | 功能齐全,被大量开源项目使用 | 在Linux平台上直接调用操作系统的AIO,性能得到很大的提升 | 性能非常好,与MuleESB无缝整合 | 性能优越的商业MQ | 由于Erlang语言的并发能力,性能很好 | 低延时,高性能,最高43万条消息每秒 | ||
授权方式 | 开源 | 开源 | 开源 | 开源 | 商业 | 商业 | 开源 | 开源 |
开发语言 | Java | Java | Java | Java | Java | Java | Erlang | C |
支持的协议 | OpenWire、STOMP、REST、XMPP、AMQP | JMS | JMS | JMS | JMS | JMS | AMQP | TCP、UDP |
客户端支持语言 | Java、C、C++、Python、PHP、Perl、.net等 | Java | Java | Java | Java | Java、C、C++、.net | Java、C、C++、Python、PHP、Perl等 | python、java、php、.net等 |
持久化 | 内存、文件、数据库 | 内存、文件 | 内存、文件 | 内存、文件 | 内存、文件 | 内存、文件、数据库 | 内存、文件 | 在消息发送端保存 |
事务 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
集群 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 |
负载均衡 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 不支持 |
管理界面 | 一般 | 一般 | 无 | 一般 | 一般 | 好 | 无 | 无 |
部署方式 | 独立、嵌入 | 独立、嵌入 | 独立、嵌入 | 独立、嵌入 | 独立 | 独立 | 独立 | 独立 |
评价 | 成熟稳定,开源首选 | 依赖容器,不适合跨语言调用 | 推出的时间不长,尚无使用案例,不适合跨语言调用 | 依赖容器,不适合跨语言调用 | 推出的时间不长,无成功案例,目前仅支持Java | 成熟稳定 | Queue的数量大于50后,高并发下无法持续稳定的提供服务 | 不支持事务、集群,并且消息不能在服务端持久化 |
--------------------- 本文来自 qq_42211289 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_42211289/article/details/80318791?utm_source=copy