diff --git a/versioned_docs/version-5.0/01-introduction/01whychoose.md b/versioned_docs/version-5.0/01-introduction/01whychoose.md index 365d868bfb..e97df78e61 100644 --- a/versioned_docs/version-5.0/01-introduction/01whychoose.md +++ b/versioned_docs/version-5.0/01-introduction/01whychoose.md @@ -19,8 +19,8 @@ Apache RocketMQ 自诞生以来,因其架构简单、业务功能丰富、具 ## RocketMQ vs. ActiveMQ vs. Kafka -| Messaging Product|Client SDK| Protocol and Specification | Ordered Message | Scheduled Message | Batched Message |BroadCast Message| Message Filter|Server Triggered Redelivery|Message Storage|Message Retroactive|Message Priority|High Availability and Failover|Message Track|Configuration|Management and Operation Tools| -| -------|--------|--------|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----| -| ActiveMQ|Java, .NET, C++ etc. |Push model, support OpenWire, STOMP, AMQP, MQTT, JMS|Exclusive Consumer or Exclusive Queues can ensure ordering|Supported|Not Supported|Supported|Supported|Not Supported|Supports very fast persistence using JDBC along with a high performance journal,such as levelDB, kahaDB|Supported|Supported|Supported, depending on storage,if using levelDB it requires a ZooKeeper server|Not Supported|The default configuration is low level, user need to optimize the configuration parameters|Supported| -| Kafka | Java, Scala etc.|Pull model, support TCP|Ensure ordering of messages within a partition|Not Supported|Supported, with async producer|Not Supported|Supported, you can use Kafka Streams to filter messages|Not Supported|High performance file storage|Supported offset indicate|Not Supported|Supported, requires a ZooKeeper server|Not Supported|Kafka uses key-value pairs format for configuration. These values can be supplied either from a file or programmatically.|Supported, use terminal command to expose core metrics| -| RocketMQ |Java, C++, Go |Pull model, support TCP, JMS, OpenMessaging|Ensure strict ordering of messages,and can scale out gracefully|Supported|Supported, with sync mode to avoid message loss|Supported|Supported, property filter expressions based on SQL92|Supported|High performance and low latency file storage|Supported timestamp and offset two indicates|Not Supported|Supported, Master-Slave model, without another kit|Supported|Work out of box,user only need to pay attention to a few configurations|Supported, rich web and terminal command to expose core metrics| +| 消息产品 | 客户端SDK | 协议和规范 | 有序消息 | 定时消息 | 批量消息 | 广播消息 | 消息过滤 | 服务器触发的重传 | 消息存储 | 消息追溯 | 消息优先级 | 高可用性和故障转移 | 消息跟踪 | 配置 | 管理和操作工具 | +| -------- | ----------------- | ---------------------------------------------- | ------------------------------------ | -------- | -------------------------------- | -------- | ----------------------------------- | ---------------- | ------------------------------------------------------------ | -------------------------- | ---------- | ------------------------------------------------------ | -------- | ------------------------------------------------------------ | -------------------------------------- | +| ActiveMQ | Java, .NET, C++等 | 推送模型,支持OpenWire, STOMP, AMQP, MQTT, JMS | 独占消费者或独占队列可以确保顺序 | 支持 | 不支持 | 支持 | 支持 | 不支持 | 支持使用JDBC的非常快速的持久化以及高性能日志,例如levelDB, kahaDB | 支持 | 支持 | 支持,取决于存储,如果使用levelDB则需要ZooKeeper服务器 | 不支持 | 默认配置较低级,用户需要优化配置参数 | 支持 | +| Kafka | Java, Scala等 | 拉取模型,支持TCP | 确保分区内消息的顺序 | 不支持 | 支持,使用异步生产者 | 不支持 | 支持,可以使用Kafka Streams过滤消息 | 不支持 | 高性能文件存储 | 支持偏移量指示 | 不支持 | 支持,需要ZooKeeper服务器 | 不支持 | Kafka使用键值对格式进行配置。这些值可以从文件或以编程方式提供 | 支持,使用终端命令暴露核心指标 | +| RocketMQ | Java, C++, Go | 拉取模型,支持TCP, JMS, OpenMessaging | 确保消息严格有序,并且可以优雅地扩展 | 支持 | 支持,使用同步模式以避免消息丢失 | 支持 | 支持,基于SQL92的属性过滤表达式 | 支持 | 高性能和低延迟的文件存储 | 支持时间戳和偏移量两种指示 | 不支持 | 支持,主从模式,无需其他工具 | 支持 | 开箱即用,用户只需关注少量配置 | 支持,丰富的网页和终端命令暴露核心指标 |