安装依赖包
sudo apt-get install -y git g++ make libssl-dev libgflags-dev libprotobuf-dev libprotoc-dev protobuf-compiler libleveldb-dev
brpc安装
解压后,到incubator-brpc 目录下执行:
$ sh config_brpc.sh --headers=/usr/include --libs=/usr/lib
$ make
测试demo
到incubator-brpc/example/echo_c++ 示例下编译:
得到echo_server 和 echo_client 两个bin文件
先运行echo_server:
$ ./echo_server
I0119 14:20:28.284006 5379 src/brpc/server.cpp:1045] Server[example::EchoServiceImpl] is serving on port=8000.
I0119 14:20:28.284450 5379 src/brpc/server.cpp:1048] Check out http://VM-0-16-ubuntu:8000 in web browser.
……
在打开一个窗口运行echo_client:
$ ./echo_client
I0119 14:21:47.500819 5592 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/client.cpp:78] Received response from 0.0.0.0:8000 to 127.0.0.1:56598: hello world (attached=) latency=4388us
I0119 14:21:48.501509 5592 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/client.cpp:78] Received response from 0.0.0.0:8000 to 127.0.0.1:56598: hello world (attached=) latency=476us
I0119 14:21:49.502055 5592 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/client.cpp:78] Received response from 0.0.0.0:8000 to 127.0.0.1:56598: hello world (attached=) latency=368us
I0119 14:21:50.502500 5592 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/client.cpp:78] Received response from 0.0.0.0:8000 to 127.0.0.1:56598: hello world (attached=) latency=312us
……
客户端会不对向server 发送请求,而server端也会打印相应的处理:
$ ./echo_server
I0119 14:20:28.284006 5379 src/brpc/server.cpp:1045] Server[example::EchoServiceImpl] is serving on port=8000.
I0119 14:20:28.284450 5379 src/brpc/server.cpp:1048] Check out http://VM-0-16-ubuntu:8000 in web browser.
I0119 14:21:47.499949 5386 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/server.cpp:54] Received request[log_id=0] from 127.0.0.1:56598 to 127.0.0.1:8000: hello world (attached=)
I0119 14:21:48.501198 5390 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/server.cpp:54] Received request[log_id=1] from 127.0.0.1:56598 to 127.0.0.1:8000: hello world (attached=)
I0119 14:21:49.501861 5388 /home/ubuntu/mywork/brpc/incubator-brpc/example/echo_c++/server.cpp:54] Received request[log_id=2] from 127.0.0.1:56598 to 127.0.0.1:8000: hello world (attached=)
……