Architecting a High-Performance (Open Source) Distributed Message Queuing System in C++

BlazingMQ is a new open source* distributed message queuing system developed at and published by Bloomberg. It provides highly-performant queues to applications for asynchronous, efficient, and reliable communication. This system has been used at scale at Bloomberg for eight years, where it moves terabytes of data and billions of messages across tens of thousands of queues in production every day.

BlazingMQ provides highly-available, fault-tolerant queues courtesy of replication based on the Raft consensus algorithm. In addition, it provides a rich set of enterprise message routing strategies, enabling users to implement a variety of scenarios for message processing.

Written in C++ from the ground up, BlazingMQ has been architected with low latency as one of its core requirements. This has resulted in some unique design and implementation choices at all levels of the system, such as its lock-free threading model, custom memory allocators, compact wire protocol, multi-hop network topology, and more.

This talk will provide an overview of BlazingMQ. We will then delve into the system’s core design principles, architecture, and implementation details in order to explore the crucial role they play in its performance and reliability.

BlazingMQ has been open sourced — https://github.com/bloomberg/blazingmq.

24 minutes
Register now to access all 50+ P99 CONF videos and slide decks.
Watch this session from the P99 CONF livestream, plus get instant access to all of the P99 CONF sessions and decks.
Vitaly Dzhitenov at Bloomberg LP

Vitaly Dzhitenov, Senior Software Engineer at Bloomberg

Passionate about low latency, high-performance, high-availability distributed solutions for over 20 years. Hands on experience with a broad range of technologies, including messaging systems, networks, policies, identity management, carrier and enterprise servers.

P99 CONF OCT. 23 + 24, 2024

Register for Your Free Ticket