hmbdc is an open source header-only C++ framework and library built on top of various real-world tested lockfree algorithms that facilitate ultra low latency and high throughput messaging (inter-thread, inter-process and thru network) programming.
Keywords and features:
- easy to use/high performance C++ type based message pub/sub framework, symmetric (no broker process), no IDL requirments, header-only
- hmbdc avoids pub/sub serialization / copying whenever possible, even comes with easy to use zero copy shared memory pub/sub support, performance is optimized for both small (bytes) and large (>10MB) messages
- Active Object pattern framework - multi-threaded without the headache
- lockfree / disruptor pattern in implementation
- low latency / high throughput / support kernel bypassing driver
- support multiple transport mechanisms with the consistent look and feel C++17 API:
- UDP multicast
- netmap multicast
- reliable multicast
- reliable netmap
- message recording and replay, integration with any other programming languages that supports Linux piping.
- supports both x86_64 and ARM64(aarch64) platforms Linux and QNX
Who needs hmbdc?The short answer is:
hmbdc is for developers who find existing middle ware being slow or expensive when it comes to code performance, project delivery speed and hardware resources.
The longer version:
It is used in areas that are CPU or network intensive with ultra high performance (latency / throughput) requirements. Where the application latencies are measured in the unit of microsecond, or the system throughput is measured in millions per second - such as high frequency trading, high performance server-backend, autonomous driving, robotics, multi-core real-time systems, etc.
hmbdc helps you get the job done quick and fast with way less hardware costs!
Some of hmbdc users: