Skip to content
/ brpc Public
forked from apache/brpc

Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services, called "baidu-rpc" inside Baidu.

License

Notifications You must be signed in to change notification settings

Carmot/brpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The opensource version of baidu-rpc
# BUILD
### Ubuntu/LinuxMint/WSL
**install deps**  
Common: sudo apt-get install git g++ make  
gflags: sudo apt-get install libgflags-dev  
protobuf: sudo apt-get install libprotobuf-dev libprotoc-dev protobuf-compiler  
leveldb(used by rpcz): sudo apt-get install libleveldb-dev libsnappy-dev  
openssl(for https): libssl-dev  
**compile**  
git clone this repo. cd into the repo and run: sh config_brpc.sh --headers=/usr/include --libs=/usr/lib  
**run echo example**  
cd into example/echo_c++, make, run echo_server and echo_client  
**run examples with cpu/heap profilers**  
sudo apt-get install libgoogle-perftools-dev libunwind-dev liblzma-dev  
Rerun config_brpc.sh  
**compile tests**  
Install gmock and gtest, use the gtest embedded in gmock and don't install libgtest-dev  
sudo apt-get install google-mock; cd /usr/src; sudo cmake .; sudo make; sudo mv lib*.a gtest/lib*.a /usr/lib; sudo mv gtest/include/gtest /usr/include/  
Rerun config_brpc.sh and run make in test/

### Baidu-internal
**setup directories**  
download deps: third-64/gflags@gflags_2-0-0-100_PD_BL  third-64/protobuf@protobuf_2-4-1-1100_PD_BL third-64/leveldb@leveldb_1-0-0-0_PD_BL  
**compile**  
git clone this repo. cd into the repo and run: sh config_brpc.sh --headers=../../../third-64 --libs=../../../third-64  
**run examples with cpu/heap profilers**  
download deps: third-64/tcmalloc@tcmalloc_1-7-0-200_PD_BL  
Rerun config_brpc.sh  

# Supported toolchains:
GCC: 3.4-7.1  
glibc: 2.12-2.25  
protobuf: 2.4-3.2  
gflags: 2.0-2.21  
openssl: 0.98-1.1  
tcmalloc: 1.7-2.5  

About

Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services, called "baidu-rpc" inside Baidu.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 95.3%
  • Perl 1.6%
  • CMake 1.1%
  • Shell 0.6%
  • C 0.4%
  • Objective-C++ 0.3%
  • Other 0.7%