English | 简体中文 | RocketMQ 官网
Apache RocketMQ 的多语言客户端实现,也被称为 RocketMQ 5.x 客户端。遵从 rocketmq-apis 约束,使用 Protocol Buffers 和 gRPC 替代了 4.x 的旧有协议。
为 Apache RocketMQ 提供包含 Java,C++,C#,Golang,JavaScript,Rust 在内的所有主流编程语言的云原生的,健壮的客户端解决方案。
- 可用 - ✅
- 进行中 - 🚧
特性 | Java | C/C++ | C# | Golang | Rust | Python | Node.js | PHP |
---|---|---|---|---|---|---|---|---|
Producer with standard messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 🚧 |
Producer with FIFO messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 🚧 |
Producer with timed/delay messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 🚧 |
Producer with transactional messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 🚧 |
Producer with recalling timed/delay messages | ✅ | 🚧 | 🚧 | 🚧 | 🚧 | 🚧 | 🚧 | 🚧 |
Simple consumer | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 🚧 |
Push consumer with concurrent message listener | ✅ | ✅ | 🚧 | 🚧 | ✅ | 🚧 | 🚧 | 🚧 |
Push consumer with FIFO message listener | ✅ | ✅ | 🚧 | 🚧 | ✅ | 🚧 | 🚧 | 🚧 |
本项目是以多语言 monorepo 的形式组织的,因此可以在每种语言的子目录中找到各自的构建命令。此外,由于 rocketmq-apis 作为一个子模块被包含在本项目中,可能会被一些语言的实现在构建时所引用,为了保证构建的顺利,我们强烈建议使用以下命令克隆此代码仓库:
git clone --recursive [email protected]:apache/rocketmq-clients.git
与 Apache RocketMQ 的其他项目类似,我们欢迎任何形式的贡献,包括但不仅限于提交 bug 报告、勘误纠错、文档撰写或提交 feature。成为 Apache RocketMQ contributor,从第一个 issue/pull request 开始!
- rocketmq: RocketMQ 主仓库(含服务端实现)。
- rocketmq-apis: RocketMQ 协议约束。
- RIP-37: New and Unified APIs: RocketMQ 关于统一精简 API 设计的 RIP。
- RIP-39: Support gRPC protocol: RocketMQ 关于 gRPC 协议支持的 RIP。
Apache License, Version 2.0 Copyright (C) Apache Software Foundation