
New releaseSep 18, 2026
brpc v1.18.0
Framework RPC em C++ de nível industrial para construção de sistemas distribuídos de alta performance, com suporte a múltiplos protocolos (HTTP, gRPC, Redis, Thrift), balanceamento de carga integrado, serviços de nomeação e consenso RAFT.

bRPC é um framework RPC de nível industrial escrito em C++, frequentemente usado em sistemas de alto desempenho, como Busca, Armazenamento, Machine Learning, Publicidade, Recomendação, etc.
"bRPC" significa "melhor RPC".
Você pode usá-lo para:
- Construir um servidor que pode falar em múltiplos protocolos (na mesma porta), ou acessar todos os tipos de serviços
- restful http/https, h2/gRPC. Usar http/h2 no bRPC é muito mais amigável do que libcurl. Acesse protocolos baseados em protobuf com HTTP/h2+json, possivelmente a partir de outra linguagem.
- redis e memcached, thread-safe, mais amigáveis e com melhor desempenho que os clientes oficiais.
- rtmp/flv/hls, para construir serviços de streaming.
- hadoop_rpc (pode vir a ser open source)
- suporte a rdma
- suporte a thrift, thread-safe, mais amigável e com melhor desempenho que os clientes oficiais.
- todos os tipos de protocolos usados na Baidu: baidu_std, streaming_rpc, hulu_pbrpc, sofa_pbrpc, nova_pbrpc, public_pbrpc, ubrpc e os baseados em nshead.
- Construa serviços distribuídos HA usando uma implementação de nível industrial do algoritmo de consenso RAFT, que é open source em braft
- Servidores podem processar requisições sincronamente ou assincronamente.
- Clientes podem acessar servidores sincronamente, assincronamente, semissincronamente, ou usar combo channels para simplificar acessos fragmentados ou paralelos de forma declarativa.
- Depure serviços via http e execute profilers de cpu, heap e contenção.
- Obtenha melhor latência e throughput.
- Estenda o bRPC com os protocolos usados na sua organização rapidamente, ou personalize componentes, incluindo serviços de nomeação (dns, zk, etcd), balanceadores de carga (rr, random, consistent hashing)
Experimente!
- Leia a visão geral para saber onde o bRPC pode ser usado e suas vantagens.
- Leia primeiros passos para ver os passos de compilação e experimente os exemplos.
- Documentação:
- Benchmark de desempenho
- bvar
- bthread
- Cliente
- Servidor
- Serviços embutidos
- Ferramentas
- Outros
- IOBuf
- Log de streaming
- FlatMap
- Coroutine
- Circuit Breaker
- RDMA
- Suporte ao Bazel
- Plugin dissector do Wireshark para baidu_std
- Introdução ao bRPC(material de treinamento)
- Um tutorial sobre como construir serviços em larga escala(material de treinamento)
- Internos do bRPC(material de treinamento)
- RPC em profundidade
- Casos de uso
Contribua com código
Consulte aqui.
Feedback e como participar
- Reporte bugs, faça perguntas ou dê sugestões por meio de Github Issues
- Assine a lista de e-mails ([email protected]) para ficar por dentro do projeto
Código de Conduta
Seguimos o código de conduta da Apache Software Foundation; consulte-o aqui Link