A cross-platform C++ framework for building JSON-RPC 2.0 & 1.0 compatible client and server applications.
libjson-rpc-cpp is a C++ framework for implementing JSON-RPC (JSON Remote Procedure Call) clients and servers. It provides full compatibility with JSON-RPC 2.0 and partial support for 1.0, enabling developers to build distributed systems with standardized remote communication. The framework includes tools like a stub generator and ready-to-use transport layers to streamline RPC application development.
C++ developers building distributed systems, microservices, or any application requiring remote procedure calls over JSON-RPC protocols. It is particularly useful for projects needing cross-platform RPC support with extensible transport options.
Developers choose libjson-rpc-cpp for its comprehensive JSON-RPC compliance, cross-platform readiness, and productivity features like automatic stub generation. Its modular architecture and liberal MIT license make it a flexible and accessible choice for both open-source and commercial projects.
C++ framework for json-rpc (json remote procedure call)
Supports complete JSON-RPC 2.0 and partial 1.0 specifications, ensuring standardized remote procedure calls for both clients and servers, as stated in the README.
Includes jsonrpcstub tool to automatically generate client and server stub classes from JSON spec files, supporting C++, JavaScript, and Python, reducing manual coding effort.
Offers ready-to-use HTTP, TCP, Redis, and Unix socket connectors, allowing quick integration without custom transport implementation, as highlighted in the features.
Designed with a clean, modular structure that makes it easy to add new transports or customize features, per the README's emphasis on extensibility.
The README explicitly promotes a newer header-only implementation (json-rpc-cxx), indicating this library may be outdated or less optimized for modern C++ development.
Requires multiple external libraries like libcurl and libmicrohttpd, complicating installation and increasing project footprint compared to lighter alternatives.
Involves numerous CMake flags to enable or disable features (e.g., transports), adding overhead and potential for errors in setup, as seen in the build options.
brpc is an Industrial-grade RPC framework using C++ Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recommendation etc. "brpc" means "better RPC".
Cap'n Proto serialization/RPC system - core tools and C++ library
nanomsg library
nanomsg-next-generation -- light-weight brokerless messaging
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.