/qmq

QMQ是去哪儿网内部广泛使用的消息中间件,自2012年诞生以来在去哪儿网所有业务场景中广泛的应用,包括跟交易息息相关的订单场景; 也包括报价搜索等高吞吐量场景。

Primary LanguageJavaApache License 2.0Apache-2.0

QMQ

Maven Central GitHub release License

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>1.1.3</version>
</dependency>

快速开始

你可以通过设计背景了解设计QMQ的初衷和它与其他消息队列的不同。 阅读架构概览了解QMQ的存储模型

文档

技术支持

欢迎关注QMQ官方公众号

公众号

QQ群

QQ

开源协议

Apache 2 license

用户(已经在生产使用)

欢迎在这里,以方便我们提供更好的技术支持

去哪儿 携程 IYMedia 便利蜂 金汇金融