blazingmq
OZ
blazingmq | OZ | |
---|---|---|
13 | 4 | |
2,471 | 28 | |
0.8% | - | |
9.2 | 5.9 | |
8 days ago | 7 months ago | |
C++ | C | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
blazingmq
- BlazingMQ - High performant Open Source Message Queue by Bloomberg
- FLaNK Stack Weekly for 24 July 2023
-
A Modern High-Performance Open Source Message Queuing System
Sounds great, and you have lots of nice documentation on the page, but could you provide a TLDR? There's a lot of competition in this area: GRPC, Cap'n'proto (was posted on HN a day or two ago), NATS, etc.
I'm also having trouble figuring out if Mats3 is a library (with a JMS API) over a variety of messaging systems (WebSockets, NATS, etc.)?
P.S. Some diagrams like https://bloomberg.github.io/blazingmq/ would be very helpful, especially at https://mats3.io/background/what-is-mats/. If a picture's worth a thousand words, and an animation must be worth at least 10k words. :)
- BlazingMQ: High-performance open source message queuing system
- A modern high-performance open source message queuing system
OZ
-
ZeroMQ – Relicense from LGPL3 and exceptions to MPL 2.0
At my day job we run > 50 million messages per day through ZeroMQ, and have been quite pleased with its performance and stability (https://github.com/nyfix/OZ/tree/master#who-uses-it).
But the truth is that ZeroMQ has a steep learning curve, and some rather sharp edges that can leave nasty cuts if one is not careful.
If you're interested in becoming familiar with ZeroMQ, you might want to check out our implementation: <https://github.com/nyfix/OZ/>.
-
A Modern High-Performance Open Source Message Queuing System
Unlikely, but they seem to be different things altogether. BlazingMQ appears to be a traditional message queue (think ActiveMQ), with message peristence. ZeroMQ is more of a network middleware (think Tibco Rendezvous), and does not include persistence.
BlazingMQ also appears to be more of a "platform" or "service" that an app can use (sort of like Oracle, say) -- ZeroMQ includes libraries that one can use to build an app, service or platform, but none is provided "out of the box".
Which makes it harder to get started with ZeroMQ, since by definition every ZeroMQ app is essentially built "from scratch".
If you're interested in ZeroMQ, you may want to check out OZ (https://github.com/nyfix/OZ), which is a Rendezvous-like platform that uses the OpenMAMA API (https://github.com/finos/OpenMAMA) and ZeroMQ (https://github.com/zeromq/libzmq) transport to provide a full-featured network middleware implementation. OZ has been used in our shop since 2020 handling approx 50MM high-value messages per day on our global FIX network.
-
The friend zone: friendly forks 101 | The GitHub Blog
At my day job, I manage a number of "friendly forks" of open-source packages (e.g., https://github.com/nyfix/OpenMAMA) as well as hosting our own open-source repos (e.g., https://github.com/nyfix/OZ).
What are some alternatives?
ZeroMQ - ZeroMQ core engine in C++, implements ZMTP/3.1
OpenMAMA - OpenMAMA is an open source project that provides a high performance middleware agnostic messaging API that interfaces with a variety of proprietary and open source message oriented middleware systems.
BDE - Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.
anime.js - JavaScript animation engine
mosquitto - Eclipse Mosquitto - An open source MQTT broker
mats3 - Mats3: Message-based Asynchronous Transactional Staged Stateless Services
kafka-in-production - :books: Tech blogs & talks by companies that run Kafka in production
ntf-core - Sockets, timers, resolvers, events, reactors, proactors, and thread pools for asynchronous network programming