Queue FAQ
约 1 分钟阅读
标签:FAQ
Event vs Message
- Event -> EventBus
- 事件 - 强调发生了什么
- 不包含业务属性,通用 - 无指向性
- 通常 fire and forget
- 用于 集成、解耦、触发交互
- 多个 外部/内部消费者
- Message -> Queue
- 消息 - 强调需要被消费
- 包含业务属性 - 有指向性
- 通常需要 持久化、重试、幂等
- 用于 业务流程、状态变更、事务
- 通常一个业务会有 一个/组 消费者 - 相同消息不重复消费
NATS vs NSQ
- Nats笔记NATS支持 JetStreaming · 支持 WebSocket - 能够利用 HTTP 基础设施 · 支持 JWT Auth · 支持 Auth Resolver - 通过 nats service 监听实现自定义 auth · 支持 Group Consumer打开:/notes/queue/nats
- 专注 Pub/Sub
- 内存处理
- 支持 JetStreaming
- NSQ
- 默认情况下是不持久化的
Kafka vs RocketMQ vs Pulsar
- Kafka笔记KafkaApache Kafka · A distributed streaming platform · Spring Cloud BUS · Reference · 基于 Spring Cloud Stream · Spring Cloud Stream打开:/notes/queue/kafka
- by Confluent 2010
- 开发更活跃
- 社区活跃
- 生态丰富
- 部分 Scala - Java 越来越多
- HA 依赖 Zookeeper
- 目前正在移除 ZK 依赖
- 内部提供 NameServer
- 默认保留 7 天
- 云服务商: 非常多 - 阿里云也有
- 简单易用
- RocketMQ笔记RocketMQapache/rocketmq · 早期参考 Kafka 设计, Scala -> Java · vs Kafka · 功能更多 - 更复杂 · 社区不活跃 · 开发活跃度耕地 · 服务商更少 · 不依赖 ZK - 有 NamerServer 组件 = ZK打开:/notes/queue/rocketmq
- by 阿里 2011
- 纯 Java - 早期相当于参考 Kafka 翻的 Java
- 社区 - 中国、小众
- 生态非常欠缺
- HA 不依赖外部服务 - Master Slave/Dledger
- 主从切换可能有点问题
- 默认保留 72 小时 - 3 天
- 云服务商: 阿里云
- vs Kafka
- 可以支持更多 Topic 数量 - 但是阿里云上限 150
- 功能完善 - 复杂度更高
- Pulsar笔记Pulsarapache/pulsar · Apache-2.0, Java · 存算分离 · 存储 apache/bookkeeper · Broker 无状态 · apache/pulsar-helm-chart · 组件 · zookeeper · bookkeeper打开:/notes/queue/pulsar
- by Streamlio 2012 - 201809 Apache 顶级项目
- 默认一直保留 - 可手动删除
- 存算分离
- Bookkeeper 存储
- Broker 无状态
- 更新
- 支持 多租户、强一致性、跨域部署
- 云服务商: streamnative.cn
- 阿里云合作
- 结构复杂 - 组件很多
关联信息
反向链接、本文链接的其他页面和外部资料。
站内链接
- Kafka笔记 · Kafka
Apache Kafka · A distributed streaming platform · Spring Cloud BUS · Reference · 基于 Spring Cloud Stream · Spring Cloud Stream
- NATS笔记 · Nats
支持 JetStreaming · 支持 WebSocket - 能够利用 HTTP 基础设施 · 支持 JWT Auth · 支持 Auth Resolver - 通过 nats service 监听实现自定义 auth · 支持 Group Consumer
- Pulsar笔记 · Pulsar
apache/pulsar · Apache-2.0, Java · 存算分离 · 存储 apache/bookkeeper · Broker 无状态 · apache/pulsar-helm-chart · 组件 · zookeeper · bookkeeper
- RocketMQ笔记 · RocketMQ
apache/rocketmq · 早期参考 Kafka 设计, Scala -> Java · vs Kafka · 功能更多 - 更复杂 · 社区不活跃 · 开发活跃度耕地 · 服务商更少 · 不依赖 ZK - 有 NamerServer 组件 = ZK
参考资料
其他外链2 条
- rocketmq.apache.org/docsrocketmq.apache.org/docs
- streamnative.cnstreamnative.cn/