Github url

incubator-brpc

by apache

Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds ...

10.4K Stars 2.6K Forks Last release: 5 months ago (0.9.7) Apache License 2.0 2.1K Commits 11 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

中文版

Build Status

brpc

An industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances(not counting clients) and thousands kinds of services, called "baidu-rpc" inside Baidu. Only C++ implementation is opensourced right now.

You can use it to: * Build a server that can talk in multiple protocols (on same port), or access all sorts of services * restful http/https, h2/gRPC. using http/h2 in brpc is much more friendly than libcurl. Access protobuf-based protocols with HTTP/h2+json, probably from another language. * redis and memcached, thread-safe, more friendly and performant than the official clients. * rtmp/flv/hls, for building streaming services. * hadoop_rpc (may be opensourced) * rdma support (will be opensourced) * thrift support, thread-safe, more friendly and performant than the official clients. * all sorts of protocols used in Baidu: baidu_std, streaming_rpc, hulu_pbrpc, sofa_pbrpc, nova_pbrpc, public_pbrpc, ubrpc and nshead-based ones. * Build HA distributed services using an industrial-grade implementation of RAFT consensus algorithm which is opensourced at braft* Servers can handle requests synchronously or asynchronously. * Clients can access servers synchronously, asynchronously, semi-synchronously, or use combo channels to simplify sharded or parallel accesses declaratively. * Debug services via http, and run cpu, heap and contention profilers. * Get better latency and throughput. * Extend brpc with the protocols used in your organization quickly, or customize components, including naming services (dns, zk, etcd), load balancers (rr, random, consistent hashing)

Try it!

Contribute code

Please refer to here.

Feedback and Getting involved

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.