近日滴滴开源了消息队列 DDMQ。
DDMQ 是基于 Apache RocketMQ 的分布式消息队列,滴滴介绍其在内部已经被广泛使用,内部稳定运行了两年多时间,为滴滴出行包括网约车、小桔车服、地图、金融、智能驾驶、智慧交通与外卖等业务提供了低延迟、高并发、高可用与高可靠的消息服务,日消息流水达到千亿级别,整体服务可用性超过 5 个 9。
其特性如下:
- 低延迟高吞吐:毫秒级延迟,单机百万条消息吞吐。
- 丰富的消息类型:具备实时消息、延时消息和分布式事务消息。
- 海量消息存储,支持消息回溯消费:支持 RocketMQ 和 Kafka 作为实时消息的存储引擎,使用 RocksDB 作为延时消息的存储引擎。
- 秒级延时消息:支持单条消息设置精确到秒级的延迟时间,提供普通延时消息和循环延时消息。
- 多语言客户端:提供了主流开发语言 SDK,包括 PHP、Java、Go、C/C++ 与 Python,在 API 上保持着最易使用的 High Level 形式。
- 多种消费方式:支持通过 Thrift RPC 拉取、HTTP 推送和第三方存储直写的方式消费消息。
- 支持灵活的消息过滤和转换功能:通过使用 Groovy 脚本在服务端进行消息体的转换和过滤,能够有效减少客户端和服务器的数据传输量,减轻客户端处理消息的负载。
- 统一的 Web 控制台:方便用户管理 Topic 等资源,通过控制台可以实现配置生产和消费的限流值、消费方式、Groovy 脚本、启停消费与重置消费进度等功能。
- 完善的监控配套:提供模块的健康检查和消息堆积告警功能。
开源地址:https://github.com/didi/DDMQ
转自 https://www.oschina.net/news/103671/didi-opensource-ddmq