brpc README

The project's README from github.com/apache/brpc. As one markdown file: README.md.

中文版

Linux Build Status MacOs Build Status

brpc logo (light) brpc logo (dark)

bRPC is an Industrial-grade RPC framework using C++ Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recommendation etc.

"bRPC" means "better RPC".

You can use it to:

Try it!

Contribute code

Please refer to here.

Feedback and Getting involved

Code of Conduct

We follow the code of conduct from Apache Software Foundation, please refer it here Link

brpc (apache/brpc)

Searching Database…

17.6K ·GitHub
这是什么?bRPC 是一个工业级的 C++ RPC 框架,由百度开发,用于搜索、存储、机器学习、广告和推荐等高性能系统;名称含义是“better RPC”。
这是现成的服务器,还是用来构建我自己服务的框架?它是一个 C++ 框架/库,你将其链接到自己的代码中,用来构建可在同一端口上支持多种协议的服务器,以及可以同步、异步或半同步方式访问这些服务器的客户端。
我该如何构建并开始使用它?可以按照项目的入门指南从源码构建(支持 Bazel/Make),或使用提供的 Dockerfile;项目还包含示例服务,方便你立即试用各种协议。
文档中提到的所有协议都开箱即用吗?大部分可以,但其中至少有一个协议(hadooprpc)标注为可能会开源,因此并非所有提到的内容都保证已在公开仓库中提供。
这是面向小型个人项目,还是大规模系统的?它面向大规模、高性能的生产系统,已用于百度的搜索、存储、机器学习、广告和推荐等基础设施。
它能在 Windows 上运行,还是只支持 Linux 和 macOS?项目的 CI 流水线仅覆盖 Linux 和 macOS,没有 Windows 的 CI 任务,因此 Windows 并不是官方测试过的平台。
“brpc”这个名字到底是什么意思?项目自己的 README 将其解释为“better RPC”,是对通用术语 RPC 的一个双关。
单个 bRPC 服务器能支持哪些协议?单个服务器可以在同一端口上处理多种协议,包括 HTTP/HTTPS、gRPC(h2)、Redis、Memcached、Thrift、RTMP/FLV/HLS,以及多种百度内部协议。
如何用它构建高可用的分布式服务?bRPC 提供了工业级的 RAFT 一致性算法实现,该实现也作为独立项目 “braft” 开源,可用于构建高可用的分布式服务。
我能调试或分析正在运行的 bRPC 服务吗?可以。内置的基于 HTTP 的调试功能可以查看状态、变量、连接和参数标志,并能直接在线上服务器上运行 CPU、堆内存和锁竞争分析器。
What are similar projects?workflow, grpc-go, grpc-java, pingora, go-zero, dubbo, grpc, flatbuffers
Creator
apache
Size
44.7 MB
Stars
17.6K
Age
9y
Commits · 90 Days