用于构建可靠和高性能服务的工业级RPC框架

为什么选择 bRPC?

bRPC是用c++语言编写的工业级RPC框架,常用于搜索、存储、机器学习、广告、推荐等高性能系统。

你可以使用它:

  • 搭建能在一个端口支持多协议的服务, 或访问各种服务。
    1. restful http/https, h2/gRPC, 使用bRPC的http实现比libcurl方便多了。从其他语言通过HTTP/h2+json访问基于protobuf的协议。
    2. redis and memcached, 线程安全,比官方client更方便。
    3. rtmp/flv/hls, 可用于搭建流媒体服务。
    4. hadoop_rpc (可能开源)。
    5. 支持rdma。
    6. 支持thrift, 线程安全,比官方client更方便。
    7. 各种百度内使用的协议: baidu_std, streaming_rpc, hulu_pbrpc, sofa_pbrpc, nova_pbrpc, public_pbrpc, ubrpc和使用nshead的各种协议。
    8. 基于工业级的RAFT算法实现搭建高可用分布式系统,已在braft开源。
  • Server能同步或异步处理请求。
  • Client支持同步、异步、半同步,或使用组合channels简化复杂的分库或并发访问。
  • 通过http界面调试服务, 使用cpu, heap, contention profilers。
  • 获得更好的延时和吞吐。
  • 把你组织中使用的协议快速地加入bRPC,或定制各类组件, 包括命名服务(dns, zk, etcd), 负载均衡(rr, random, consistent hashing)。
  • The Apache Software Foundation

    bRPC是Apache基金会顶级开源项目(TLP)