brpc
brpc copied to clipboard
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...
**Describe the bug (描述bug)** 对端服务端重启后,某些情况情况下客户端会报错Reached timeout,有时候又是报错EOF(符合预期)。毕竟tcp断开了,服务端会发一个RST包,从而客户端直接EOF。 因为我们配置的超时时间比较久,所以导致了对端进程退出后,等到超时才感知到(Reached timeout),我们希望业务能够立刻感知到。 不知道是否因为我们参数配置的问题? **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: Compiler: brpc: protobuf: **Additional context/screenshots (更多上下文/截图)**
**Describe the bug (描述bug)** 1. 服务里使用brpc client 连接到了其他的brpc服务; 2. brpc针对这条连接会作周期性的HealthCheck, 使用HealthCheckTask实现; 3. 服务进程退出时,有一定的概率出现下面的core dump:  4. 看起来像是HealCehckTask还有运行,但是glog相关的静态变量由于进程退出已经不存在了。 **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: CentOs 7 Compiler: brpc:...
**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)** 目前brpc server的无损热升级依赖业务端Pass平台屏蔽BNS实例的方式实现,一般按照一定的并发度来变更实例,变更每个实例的时候,先在BNS屏蔽该实例,等待BNS下发生效,再重启实例完成升级,然后再BNS解屏蔽。这种热升级方式一般情况下可以实现无损的实例升级,但是当下游集群服务器数量很大,服务器QPS很高的情况下则会带来如热升级时间过长,热升级期间会增加其他机器的负载等一系列问题。综上,brpc是否考虑自身提供无损热升级能力。 **Describe the solution you'd like (描述你期望的解决方法)** brpc server重启升级过程能保证已有连接不断开和请求不丢弃,同时能正常接收新请求。 实现方案 bRPC Server的无损热升级是一种进程级的实现方式: 1. 发布新的bin文件去覆盖老的bin文件(升级业务代码,编译产生新的bin文件); 2. 进程监听重启信号,一般使用的是Linux的SIGUSR1或者SIGUSR2系统预留的这两个自定义信号或者使用SIGHUP信号代表重启信号; 3. 向进程发送重启信号(默认kill -SIGHUP xx_pid),当进程收到重启信号,则以子进程(fork&exec)的方式加载新的bin文件启动;...
**Describe the bug (描述bug)** home/ubuntu/kevinmgyu/brpc/src/butil/logging.cc:1388: undefined reference to `google::RegisterFlagValidator(std::string const*, bool (*)(char const*, std::string const&))' libbrpc.a(variable.o): In function `bvar::dumping_thread(void*)': /home/ubuntu/kevinmgyu/brpc/src/bvar/variable.cpp:706: undefined reference to `google::GetCommandLineOption(char const*, std::string*)' /home/ubuntu/kevinmgyu/brpc/src/bvar/variable.cpp:711: undefined reference to...
**Describe the bug (描述bug)** 使用thrift server时coredump **To Reproduce (复现方法)** 非必现,cpu压力大时容易出现 **Expected behavior (期望行为)** **Versions (各种版本)** OS: CentOS release 7.2 Compiler: gcc-4.8.2-1.el6.x86_64 brpc: 2018年7月下旬的brpc版本 protobuf: 3.5 **Additional context/screenshots (更多上下文/截图)** (gdb) bt...
**Describe the bug (描述bug)** go grpc 循环访问 brpc的一个接口服务拿数据,拿到的数据到达一定量的时候,brpc服务端会卡住,客户端收不到回的数据包 每次拿2000行数据,第一次rpc就会卡住 每次拿500行数据,第四次rpc会卡住 每次拿1行数据,差不多到第2w次rpc会卡住 卡住的现象,go grpc调用接口后不返回任何错误码,直到超时,抓包观察到的是brpc服务端填充了response但是没有回包 **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: Compiler: brpc: protobuf: **Additional context/screenshots (更多上下文/截图)**
C++版本是否有计划支持dubbo协议了?或者已经有支持但是没开源发布?
**Describe the bug (描述bug)** 在proto文件中使用了“errno”字段,编译时报错 /echo_c++/build/echo.pb.h:199:44: error: 'bthread_errno_location' declared as function returning a function inline ::google::protobuf::int32 errno() const; /echo_c++/build/echo.pb.h:448:56: error: 'bthread_errno_location' declared as function returning a function inline ::google::protobuf::int32 EchoResponse::errno()...
**Describe the bug (描述bug)** [ 95%] Linking CXX executable ../output/bin/protoc-gen-mcpack CMakeFiles/protoc-gen-mcpack.dir/mcpack2pb/generator.cpp.o: In function `google::protobuf::internal::StringTypeTraits::Get(int, google::protobuf::internal::ExtensionSet const&, std::string const&)': /usr/local/include/google/protobuf/extension_set.h:1077: undefined reference to `google::protobuf::internal::ExtensionSet::GetString(int, std::string const&) const' CMakeFiles/protoc-gen-mcpack.dir/mcpack2pb/generator.cpp.o: In function `google::protobuf::io::Printer::PrintInternal(std::map*,...
brpc编译错误
**Describe the bug (描述bug)** 按照文档编译brpc https://github.com/apache/incubator-brpc/blob/master/docs/cn/getting_started.md 但是发生如下错误: ``` yluo@ubuntu:~/incubator-brpc$ sh config_brpc.sh --headers=/usr/include --libs=/usr/lib yluo@ubuntu:~/incubator-brpc$ make > Linking protoc-gen-mcpack g++ -o protoc-gen-mcpack -I./src -I/usr/include/ -L/usr/lib/x86_64-linux-gnu -std=c++0x -Xlinker "-(" src/idl_options.pb.cc src/mcpack2pb/generator.o libbrpc.a...