The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 8 C++ Inter-process communication Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
areg-sdk
AREG is an asynchronous Object RPC framework to simplify multitasking programming by blurring borders between processes and treating remote objects as if they coexist in the same thread.
Project mention: Golang: out-of-box backpressure handling with gRPC, proven by a Grafana dashboard | dev.to | 2024-04-03gRPC, built on HTTP/2, inherently supports flow control. The server can push updates, but it must also respect flow control signals from the client, ensuring that it doesn't send data faster than what the client can handle.
Yeah I pretty much only use my own alternate container implementations (from KJ[0]), which avoid these footguns, but the result is everyone complains our project is written in Kenton-Language rather than C++ and there's no Stack Overflow for it and we can't hire engineers who know how to write it... oops.
[0] https://github.com/capnproto/capnproto/blob/v2/kjdoc/tour.md
Slightly OT:
Are ZeroMQ and NanoMQ still widely used (and recommended)?
https://github.com/zeromq/libzmq
https://github.com/nanomq/nanomq
Project mention: Show HN: Comprehensive inter-process communication (IPC) toolkit in modern C++ | news.ycombinator.com | 2024-04-13Also, when you want to perform some access control with access rights, you have to face sid— and ace-strings - oh they are fun. And, of course, there are all the nasty details; for instance, Windows defines macros that lead to compilation failures since they collide with internal naming. Take a look at this here, maybe it makes your efforts less painless: https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceor...
You could reuse the iceoryx platform layer that enables iceoryx to run on every platform from qnx, linux, freertos, mac, windows. Maybe it can help you as well: https://github.com/eclipse-iceoryx/iceoryx/blob/master/doc/w...
Project mention: A lock-free ring-buffer with contiguous reservations (2019) | news.ycombinator.com | 2024-02-29
Project mention: Essentials of Object Oriented and Functional Programming: A Guide to Modular Code | dev.to | 2023-07-27FP Libraries: gRPC, ZeroMQ, and AREG are examples of libraries with a special focus on providing possibilities for Interprocess Communication. Developed using C++, they facilitate communication through predefined APIs, emphasizing functional programming concepts.
C++ Inter-process communication related posts
- Mysterious Moving Pointers
- Flow-IPC: Open-Source Toolkit for Low-Latency Inter-Process Communication in C++
- Show HN: Comprehensive inter-process communication (IPC) toolkit in modern C++
- Lightweight and fast AMQP (0-9-1) server
- Condvars and atomics do not mix
- Cap'n'Proto: infinitely faster than Protobuf
- Why gRPC is not natively supported by Browsers
-
A note from our sponsor - WorkOS
workos.com | 23 Apr 2024
Index
What are some of the best open-source Inter-process communication projects in C++? This list will help you:
Project | Stars | |
---|---|---|
1 | gRPC | 40,685 |
2 | Cap'n Proto | 11,163 |
3 | ZeroMQ | 9,256 |
4 | rpclib | 1,598 |
5 | iceoryx | 1,512 |
6 | libjson-rpc-cpp | 936 |
7 | lockfree | 689 |
8 | areg-sdk | 237 |
Sponsored