Logo
Sign in

bRPC is an industrial-grade RPC framework in C++ for building reliable, high-performance services across multiple protocols, supporting synchronous and asynchronous communication, profiling, and extensibility for distributed systems.

Vendor

Vendor

The Apache Software Foundation

Company Website

Company Website

status.png
server_side.png
Product details

bRPC

bRPC is an industrial-grade RPC framework written in C++ designed for building reliable, high-performance services. It is widely used in systems requiring high throughput and low latency, such as search engines, storage platforms, machine learning pipelines, advertising systems, and recommendation engines. bRPC abstracts network communication complexities and supports multiple protocols, serialization formats, and deployment models, making it suitable for diverse distributed environments.

Features

  • Supports multiple protocols on the same port, including HTTP/HTTPS, gRPC, h2, RTMP, FLV, HLS, Redis, Memcached, Thrift, and custom Baidu protocols.
  • Thread-safe client implementations for Redis, Memcached, and Thrift.
  • Built-in support for streaming data and progressive readers.
  • RAFT-based high-availability distributed service implementation via braft.
  • Debugging tools including CPU, heap, and contention profilers.
  • Simple API with only three major headers: Server, Channel, Controller.
  • Transparent connection management with options for short, pooled, and single connections.
  • Load balancing algorithms: round-robin, random, consistent hashing, locality-aware.
  • Naming services integration: DNS, ZooKeeper, etcd, BNS, file-based lists.

Capabilities

  • Synchronous, asynchronous, and semi-synchronous request handling.
  • Combo channels for declarative parallel or sharded access.
  • High concurrency with minimal locking and dynamic thread management.
  • Binary and large data support with optional bypass of serialization.
  • Performance optimization for high-QPS services with parallelized I/O and message parsing.
  • Custom protocol extension and component customization.
  • Real-time service monitoring and profiling via HTTP or curl.

Benefits

  • High performance and scalability proven in Baidu’s production systems.
  • Simplified development and maintenance with intuitive APIs and configuration.
  • Enhanced reliability through robust retry mechanisms and timeout handling.
  • Improved latency and throughput with advanced threading and I/O strategies.
  • Flexibility to integrate with existing infrastructure and protocols.
  • Efficient debugging and profiling for production-grade services.