消息队列有哪些?看这篇就清楚了!

开源
RabbitMQ是一个开源的消息队列系统,它实现了AMQP(Advanced Message Queuing Protocol)协议,并提供了丰富的功能,如消息持久化、消息确认、灵活的路由和绑定等。

1.RabbitMQ

图片

RabbitMQ是一个开源的消息队列系统,它实现了AMQP(Advanced Message Queuing Protocol)协议,并提供了丰富的功能,如消息持久化、消息确认、灵活的路由和绑定等。

RabbitMQ官网地址:www.rabbitmq.com

RabbitMQ是erlang语言开发,结合erlang语言本身的并发优势,支持很多的协议:AMQP,XMPP, SMTP, STOMP,性能在万级/秒。

RabbitMQ整体架构图如下所示:

图片图片

2.Kafka

图片图片

Apache Kafka是一个分布式的流式平台,它可以处理大规模的实时数据流。

Kafka官网地址:kafka.apache.org

Kafka基于发布-订阅模型,具有高吞吐量和持久性,适用于处理大量实时数据的场景。

Kafka最初是由LinkedIn开发,并于2011年初开源,性能在百万级/秒,其整体架构图如下所示:

图片图片

3.RocketMQ

图片图片

RocketMQ是一个开源的分布式消息队列系统,由阿里巴巴集团开发并开源,RocketMQ被广泛应用于阿里巴巴集团的内部系统。

RocketMQ具有高吞吐量、低延迟、可靠性强和可扩展性等特点,适用于大规模分布式系统中的消息通信和异步解耦场景。

RocketMQ官网地址:rocketmq.apache.org

RocketMQ参考Kafka而设计的,性能在十万级/秒,其整体架构图如下所示:

图片图片

4.Pulsar

图片图片

Apache Pulsar是一个开源的分布式消息和流处理平台,具有高性能、可扩展性和持久化特性。

Pulsar支持多租户、多数据中心部署和动态扩展,适用于大规模和复杂的消息队列和流处理场景。

Pulsar官网地址:pulsar.apache.org

Apache Pulsar是Apache软件基金会顶级项目,是下一代云原生分布式消息流平台,,其整体架构图如下所示:

图片图片

5.ActiveMQ

图片图片

ActiveMQ是Apache基金会的一个开源消息中间件,支持JMS(Java Message Service)规范。

ActiveMQ提供了多种通信模式,如点对点(P2P)和发布-订阅(Pub/Sub),并具有可靠性、可扩展性和高可用性。

ActiveMQ官网地址:activemq.apache.org

6.消息队列选型

广泛来说,电商、金融等对事务性要求很高的,可以考虑RocketMQ,技术挑战不是特别高,用 RabbitMQ 是不错的选择,如果是大数据领域的实时计算、日志采集等场景可以考虑 Kafka。

责任编辑:武晓燕 来源: mikechen的互联网架构
相关推荐

2024-09-23 08:00:00

消息队列MQ分布式系统

2022-05-27 08:18:00

HashMapHash哈希表

2019-12-19 17:00:01

Java线程

2019-08-16 09:41:56

UDP协议TCP

2021-09-30 07:59:06

zookeeper一致性算法CAP

2019-12-25 10:45:30

Java悲观锁

2022-03-29 08:23:56

项目数据SIEM

2021-05-07 07:52:51

Java并发编程

2024-08-27 11:00:56

单例池缓存bean

2017-03-30 22:41:55

虚拟化操作系统软件

2018-08-17 09:14:43

饿了么容器演进

2023-09-25 08:32:03

Redis数据结构

2021-09-10 13:06:45

HDFS底层Hadoop

2023-10-04 00:32:01

数据结构Redis

2021-07-28 13:29:57

大数据PandasCSV

2023-11-07 07:46:02

GatewayKubernetes

2018-09-26 11:02:46

微服务架构组件

2021-10-21 06:52:17

ZooKeeper分布式配置

2023-12-07 09:07:58

2021-04-11 08:30:40

VRAR虚拟现实技术
点赞
收藏

51CTO技术栈公众号