MCPcopy Create free account
hub / github.com/bloomberg/blazingmq

github.com/bloomberg/blazingmq @BMQ_1.13.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release BMQ_1.13.3 ↗ · + Follow
11,449 symbols 40,361 edges 934 files 2,149 documented · 19% updated 4d ago★ 3,19537 open issues

Browse by type

Functions 9,318 Types & classes 2,131
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

  <img src="https://github.com/bloomberg/blazingmq/raw/BMQ_1.13.3/docs/assets/images/blazingmq_logo_label.svg" width="70%">


OS Linux OS AIX OS Solaris License C++ CMake MessageQueue Documentation

BlazingMQ - A Modern, High-Performance Message Queue

BlazingMQ is an open source distributed message queueing framework, which focuses on efficiency, reliability, and a rich feature set for modern-day workflows.

At its core, BlazingMQ provides durable, fault-tolerant, highly performant, and highly available queues, along with features like various message routing strategies (e.g., work queues, priority, fan-out, broadcast, etc.), compression, strong consistency, poison pill detection, etc.

Message queues generally provide a loosely-coupled, asynchronous communication channel ("queue") between application services (producers and consumers) that send messages to one another. You can think about it like a mailbox for communication between application programs, where 'producer' drops a message in a mailbox and 'consumer' picks it up at its own leisure. Messages placed into the queue are stored until the recipient retrieves and processes them. In other words, producer and consumer applications can temporally and spatially isolate themselves from each other by using a message queue to facilitate communication.

BlazingMQ's back-end (message brokers) has been implemented in C++, and client libraries are available in C++, Java, and Python (the Python SDK will be published shortly as open source too!).

BlazingMQ is an actively developed project and has been battle-tested in production at Bloomberg for 8+ years.

This repository contains BlazingMQ message broker, BlazingMQ C++ client library and a BlazingMQ command line tool, while BlazingMQ Java client library can be found in this repository.


Menu


Documentation

Comprehensive documentation about BlazingMQ can be found here.


Quick Start

This article guides readers to build, install, and experiment with BlazingMQ locally in a Docker container.

In the companion article, readers can learn about some intermediate and advanced features of BlazingMQ and see them in action.


Installation

This article describes the steps for installing a BlazingMQ cluster in a set of Docker containers, along with a recommended set of configurations.


Contributions

We welcome your contributions to help us improve and extend this project!

We welcome issue reports here; be sure to choose the proper issue template for your issue, so that we can be sure you're providing us with the necessary information.

Before sending a Pull Request, please make sure you have read our Contribution Guidelines.


License

BlazingMQ is Apache 2.0 licensed, as found in the LICENSE file.


Code of Conduct

This project has adopted a Code of Conduct. If you have any concerns about the Code, or behavior which you have experienced in the project, please contact us at opensource@bloomberg.net.


Security Vulnerability Reporting

If you believe you have identified a security vulnerability in this project, please send an email to the project team at opensource@bloomberg.net, detailing the suspected issue and any methods you've found to reproduce it.

Please do NOT open an issue in the GitHub repository, as we'd prefer to keep vulnerability reports private until we've had an opportunity to review and address them.


Core symbols most depended-on inside this repo

Shape

Method 7,213
Function 2,105
Class 1,891
Enum 240

Languages

C++99%
TypeScript1%

Modules by API surface

src/groups/bmq/bmqimp/bmqimp_brokersession.t.cpp197 symbols
src/groups/mqb/mqbcmd/mqbcmd_messages.cpp196 symbols
src/groups/bmq/bmqp/bmqp_ctrlmsg_messages.cpp191 symbols
src/groups/bmq/bmqimp/bmqimp_brokersession.cpp168 symbols
src/groups/mqb/mqbcfg/mqbcfg_messages.h158 symbols
src/groups/bmq/bmqp/bmqp_protocol.h129 symbols
src/groups/mqb/mqbc/mqbc_storagemanager.cpp100 symbols
src/groups/mqb/mqbblp/mqbblp_clusterqueuehelper.cpp97 symbols
src/applications/bmqtool/m_bmqtool_messages.h95 symbols
src/groups/mqb/mqbblp/mqbblp_rootqueueengine.t.cpp93 symbols
docs/assets/animations/libs/anime.js92 symbols
src/groups/mqb/mqbs/mqbs_filestore.cpp87 symbols

For agents

$ claude mcp add blazingmq \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page