C++ 开源项目推荐

网络库

项目名称项目地址说明
libeventhttps://github.com/libevent/libeventEvent notification library
libuvhttps://github.com/libuv/libuvCross-platform asynchronous I/O
libevhttps://github.com/enki/libevFull-featured high-performance event loop loosely modelled after libevent
libhvhttps://github.com/ithewei/libhvC/C++ network library for developing TCP/UDP/SSL/HTTP/WebSocket/MQTT Client/Server
Muduohttps://github.com/chenshuo/muduoEvent-driven network library for multi-threaded Linux server in C++ 11

RPC 框架

项目名称项目地址说明
gRPChttps://github.com/grpc/grpc 一个由 Google 开源、基于 HTTP/2 和 Protocol Buffers 的高性能 RPC 框架,使用 C++ 开发,支持多种语言(如 Go、Java、Python 等)
bRPChttps://github.com/apache/brpc 百度开源的高性能、可扩展的 RPC 框架,主要用于服务器间通信,采用 C++ 编写,广泛应用于百度内部大规模分布式系统中。
phxrpchttps://github.com/Tencent/phxrpc 腾讯微信后台团队推出的一个非常简洁小巧的 RPC 框架,编译生成的库只有 450K
tinyrpchttps://github.com/Gooddbird/tinyrpcC++ async rpc framework. 14w+ qps
rest_rpchttps://github.com/qicosmos/rest_rpcModern C++, simple, easy to use rpc framework
rpclibhttps://github.com/rpclib/rpclibA modern C++ msgpack-RPC server and client library

聊天软件

项目名称项目地址说明
TeamTalkhttps://github.com/balloonwj/TeamTalk 一款蘑菇街开源的企业内部即时通讯软件,目前支持 PC、Android、IOS、Mac 和 Web 多个终端
flamingohttps://github.com/balloonwj/flamingo 一款高性能轻量级开源即时通讯软件

序列化与反序列化

项目名称项目地址说明
Protocol Buffershttps://github.com/protocolbuffers/protobufProtocol Buffers - Google’s data interchange format
nlohmann/jsonhttps://github.com/nlohmann/jsonJSON for Modern C++
RapidJSONhttps://github.com/Tencent/rapidjsonA fast JSON parser/generator for C++ with both SAX/DOM style API
jsoncpphttps://github.com/open-source-parsers/jsoncppA C++ library for interacting with JSON