BlazingMQ logo

BlazingMQ

High-performance, fault-tolerant distributed message queue for modern workloads

BlazingMQ delivers durable, highly available queues with flexible routing, compression, and strong consistency, backed by a C++ broker and client libraries for C++, Java, and Python.

BlazingMQ banner

Overview

Overview

BlazingMQ is a distributed message‑queueing framework designed for high throughput and strong reliability. It offers durable, fault‑tolerant queues with strong consistency, and supports a variety of routing patterns—including work queues, priority, fan‑out, and broadcast. Built on a C++ broker, the system includes native client libraries for C++, Java, and Python, allowing services written in any of these languages to produce and consume messages asynchronously.

Deployment & Operations

The broker can be deployed as a cluster of Docker containers or on bare‑metal servers, and the repository provides scripts for building on Ubuntu and macOS as well as Docker‑based quick‑start guides. After installation, operators can configure replication, compression, and poison‑pill detection to meet latency‑sensitive or data‑integrity requirements. BlazingMQ has been battle‑tested in production at Bloomberg for more than eight years, demonstrating its suitability for large‑scale, mission‑critical workloads.

Highlights

Durable, fault‑tolerant queues with strong consistency
Multiple routing strategies (work, priority, fan‑out, broadcast)
Built‑in compression and poison‑pill detection
C++ broker with client libraries for C++, Java, and Python

Pros

  • Proven in production at Bloomberg for over 8 years
  • High throughput and low latency due to C++ implementation
  • Rich routing and reliability features
  • Multi‑language client support

Considerations

  • Primary broker only available in C++, limiting native extensions
  • Operational complexity of managing a distributed cluster
  • Limited built‑in monitoring dashboards
  • Advanced features may require custom plugins

Managed products teams compare with

When teams consider BlazingMQ, these hosted platforms usually appear on the same shortlist.

Amazon SQS logo

Amazon SQS

Fully managed message queuing service for decoupling and scaling distributed applications

Azure Service Bus logo

Azure Service Bus

Fully managed enterprise message broker for decoupling applications via message queues and publish/subscribe topics

Google Pub/Sub logo

Google Pub/Sub

Global messaging service for event ingestion and fan‑out

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Teams building latency‑sensitive microservices that need reliable messaging
  • Enterprises requiring strong consistency and durability across data centers
  • Developers needing flexible routing patterns such as priority or fan‑out
  • Organizations comfortable deploying and managing Docker‑based broker clusters

Not ideal when

  • Small projects that only need a simple in‑process queue
  • Environments without C++ build toolchains or Docker support
  • Use cases demanding out‑of‑the‑box UI monitoring
  • Teams preferring a fully managed SaaS message service

How teams use it

Real‑time trade data distribution

Ensures low‑latency, ordered delivery of market data to multiple consumer services

Background job processing with priority handling

Enables workers to pull high‑priority tasks first, improving SLA compliance

Event broadcasting for feature flag updates

Fan‑out routing pushes updates to all interested services instantly

Large‑scale log aggregation pipeline

Compresses messages and guarantees durability while handling high ingest rates

Tech snapshot

C++94%
Python5%
CMake1%
Shell1%
TLA1%
C1%

Tags

distributed-systemsmessage-queuequeuemiddlewarequeuesblazingmqmessaging

Frequently asked questions

What programming languages are supported for client development?

Client libraries are provided for C++, Java, and Python.

How does BlazingMQ ensure message durability?

Messages are stored on durable storage with replication and strong consistency guarantees.

Can BlazingMQ be run in a Kubernetes cluster?

Yes, the broker can be containerized and orchestrated with Kubernetes using the provided Docker images.

Is there a built‑in UI for monitoring queues?

BlazingMQ does not include a native UI; monitoring must be integrated via external tools or custom plugins.

Under which license is BlazingMQ released?

The project is licensed under the Apache‑2.0 license.

Project at a glance

Active
Stars
3,121
Watchers
3,121
Forks
165
LicenseApache-2.0
Repo age2 years old
Last commit19 hours ago
Primary languageC++

Last synced 12 hours ago