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-фреймворк, созданный в Baidu для высокопроизводительных систем, таких как поиск, хранение данных, машинное обучение, реклама и рекомендации; название расшифровывается как «лучше RPC».
Это готовый сервер или фреймворк, на основе которого я строю свои сервисы?Это C++-фреймворк (библиотека), которую вы подключаете к своему коду, чтобы создавать серверы, понимающие несколько протоколов на одном порту, и клиенты, которые могут обращаться к ним синхронно, асинхронно или полусинхронно.
Как мне его собрать и начать использовать?Соберите его из исходников по руководству по началу работы проекта (поддерживаются Bazel и Make) или используйте прилагаемый Dockerfile; в комплекте есть примеры сервисов, чтобы сразу попробовать протоколы.
Все ли упомянутые протоколы доступны сразу, без доработок?Большинство — да, но хотя бы один из перечисленных протоколов (hadooprpc) помечен как тот, который, возможно, будет открыт позднее, поэтому не всё упомянутое гарантированно есть в публичном репозитории.
Это для небольших личных проектов или для крупных систем?Он рассчитан на крупные высоконагруженные производственные системы — его используют в инфраструктуре поиска, хранения данных, машинного обучения, рекламы и рекомендаций Baidu.
Работает ли оно на Windows, а также на Linux и macOS?CI-процессы проекта покрывают только Linux и macOS; CI-задачи для Windows нет, поэтому Windows официально не является тестируемой платформой.
Что на самом деле означает название «brpc»?В README проекта оно объясняется как «лучше RPC» — игра слов с общим термином RPC.
Какие протоколы может поддерживать один сервер bRPC?Один сервер может обрабатывать несколько протоколов на одном порту, включая HTTP/HTTPS, gRPC (h2), Redis, Memcached, Thrift, RTMP/FLV/HLS и несколько внутренних протоколов Baidu.
Как мне с его помощью строить высокодоступные распределённые сервисы?bRPC включает промышленную реализацию алгоритма консенсуса RAFT, которая также открыта отдельно под названием «braft» и предназначена для построения высокодоступных распределённых сервисов.
Можно ли мне отлаживать или профилировать работающий сервис bRPC?Да — встроенная отладка по HTTP показывает статус, переменные (vars), соединения и флаги, а также позволяет запускать профилировщики 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