1 Star 1 Fork 206

jiayuanchun / DDMQ

forked from DiDi-opensource / DDMQ 
Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

English | 中文



DDMQ is a distributed messaging product built by DiDi Infrastructure Team based on Apache RocketMQ. As a distributed messaging middleware, DDMQ provides low latency, high throughput and high available messaging service to many important large-scale distributed systems inside DiDi. DDMQ provides realtime messaging, delay-time messaging and transactional messaging to satisfy different scenarios. Through an easy-to-use Web Console and simple SDK Client, developers can experience producing and consuming messages in the most simple and stable way.


Features

  • Messaging model: support both P2P and Pub/Sub messaging model

  • Massive message storage, support both RocketMQ and Kafka as storage engine

  • Low latency & High throughput

  • Delay message, use RocksDB as storage engine

  • Transactional message: provide transaction similar to X/Open XA

  • Multiple language client SDK: provide client SDK in PHP, Java, Go, C/C++, Python

  • Message transition and filter with user-defined Groovy script

  • An easy-to-use Web Console


Architecture Overview


Modules

  • carrera-common: common code for other modules, such as encapsulate zk operations.

  • carrera-producer: message producer proxy with built-in Thrift Server, responsible for forwarding message from SDK client to broker.

  • carrera-consumer: message consumer proxy with built-in Thrift Server, provide SDK PULL and HTTP PUSH for message consumption.

  • carrera-chronos: delay message module, use RocksDB as storage engine.

  • carrera-sdk: producer and consumer SDK, support Java/C/C++/Go/PHP/Python.

  • rocketmq: based on RocketMQ (Ver 4.2.0),add new features such as broker auto fail-over.

  • carrera-console: a Spring-based User Web Console.

  • carrera-monitor: consumer lag monitor and DDMQ cluster monitor.

  • carrera-docker: provide a DDMQ docker image that runs in standalone mode.


Quick Start

We provide a standalone version of DDMQ as Docker image, read this for more information.


Deployment

Dependencies

  • 64bit OS, Linux/Unix/Mac
  • 64bit JDK 1.8+
  • Maven 3.2.x
  • MySQL 5.7.x
  • Tomcat 7/8/9
  • Zookeeper 3.4.x

Deployment Procedures


Usage


Contributing

Welcome to contribute by creating issues or sending pull requests. See Contributing Guide for guidelines.


Community

Mand Mobile Community

License

DDMQ is licensed under the Apache License 2.0. See the LICENSE file.

Comments ( 0 )

Sign in for post a comment

About

DDMQ 是滴滴出行架构部基于 Apache RocketMQ 构建的消息队列产品。作为分布式消息中间件,DDMQ 为滴滴出行各个业务线提供了低延迟、高并发、高可用、高可靠的消息服务。 spread retract
Java
Apache-2.0
Cancel

Releases

No release

Contributors

All

Activities

load more
can not load any more
Java
1
https://git.oschina.net/jiayuanchun/DDMQ.git
git@git.oschina.net:jiayuanchun/DDMQ.git
jiayuanchun
DDMQ
DDMQ
master

Search

153430 a91d09cc 1899542 180418 42a90fc8 1899542