Qmq
QMQ是去哪儿网内部广泛使用的消息中间件,自2012年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景; 也包括报价搜索等高吞吐量场景。
Install / Use
/learn @qunarcorp/QmqREADME
QMQ
QMQ是去哪儿网内部广泛使用的消息中间件,自2012年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景; 也包括报价搜索等高吞吐量场景。目前在公司内部日常消息qps在60W左右,生产上承载将近4W+消息topic,消息的端到端延迟可以控制在10ms以内。
主要提供以下特性:
- 异步实时消息
- 延迟/定时消息(支持任意秒级)
- 广播消息(每个Consumer都收到相同消息,比如本地cache更新)
- 基于Tag的服务端过滤
- Consumer端幂等处理支持
- Consumer端filter
- 消费端支持按条ack消息
- 死信消息
- 结合Spring annotation使用的简单API
- 提供丰富的监控指标
- 接入OpenTracing
- 事务消息
- Consumer的处理能力也可以方便扩容缩容
- Server可以随心所欲扩容缩容
- Java Client, .NET Client
- 读写分离
- 消息投递轨迹
- 历史消息的自动备份
- 有序消息(即将开源)
JDK最低版本要求
- Client: 1.7及其以上版本
- Server: 1.8及其以上版本
Maven
qmq的客户端已经发布到maven中央仓库,可以通过下面的方式获取
<dependency>
<groupId>com.qunar.qmq</groupId>
<artifactId>qmq</artifactId>
<version>{see maven}</version>
</dependency>
快速开始
你可以通过设计背景了解设计QMQ的初衷和它与其他消息队列的不同。 阅读架构概览了解QMQ的存储模型
文档
- 快速入门
- 安装
- 设计背景
- 架构概览
- 代码模块介绍
- 高可用
- 监控
- Trace
- 发送消息
- 在Junit Test中如何发送消息
- 事务消息
- 消费消息
- 幂等Exactly once消费
- .NET客户端
- 延时/定时消息
- 服务端tag过滤
- 消息备份
- 在IDE里运行代码
- 运维
- 移植
- 支持其他DB
- 开源协议
- 技术支持
- 分享
- FAQ
技术支持
欢迎关注QMQ官方公众号

QQ群
|QMQ技术交流群(2)|QMQ技术交流群(1)|
|:------------:|:------------:|
|群号:1018190609|群号:915826408(已满)|
|
|
|
开源协议
用户(已经在生产使用)
欢迎在这里,以方便我们提供更好的技术支持
<img src="docs/images/logo/soonchina.png" title="嵩云科技" width="126" height="43">
Stars History
Related Skills
node-connect
338.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
338.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.6kCommit, push, and open a PR
