brpc icon indicating copy to clipboard operation
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...

Results 414 brpc issues
Sort by recently updated
recently updated
newest added

**Describe the bug (描述bug)** 在从 `/brpc_metrics` 采集 metric 的时候, 请求由 bthread 执行, 而此时会为了锁住全局 VarMap 获取一个 pthread mutex, 当有一个用户定义的 metric 中出现了 bthread yield, 则会引起死锁. **To Reproduce (复现方法)** 使用 `PassiveStatus`, 然后在这个 metric...

**Describe the bug (描述bug)** 程序使用brpc client 访问 server端,当访问contention时 ![Image](https://github.com/user-attachments/assets/68a33dd1-063b-4d15-ae80-5d7f190962a5) 会导致程序出core 。gdb查看是这里的问题 ![Image](https://github.com/user-attachments/assets/c7d33272-8972-4d42-8972-1ad7a7c6f755) **To Reproduce (复现方法)** 只要有下载请求 访问contention必现 **Versions (各种版本)** OS: centos 7.9 gcc:11 Compiler: brpc:v1.0.0

分支:On branch 1.9.0 通过cmake方式构建 ![Image](https://github.com/user-attachments/assets/867af39e-25fb-4c07-8d19-254541e9737d) CMake Deprecation Warning at CMakeLists.txt:18 (cmake_minimum_required): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake. Update the VERSION argument value...

**Describe the bug (描述bug)** E0121 00:11:10.885643 22582 task_group_inl.h:88] _rq is full, capacity=4096 连接端口无响应,QPS掉0, cpu掉0 **To Reproduce (复现方法)** **Expected behavior (期望行为)** 能恢复 **Versions (各种版本)** OS: linux Compiler: gcc 4.8.5 brpc: 0.9.5...

bug

**Describe the bug (描述bug)** HTTP协议的server下,如果请求返回的数据较大时,数据返回延迟过高(不是rpc方法延迟,方法内无阻塞,延迟经测试很低)。返回数据100mb时,并行50个请求需要等到很久后(45s)同时发出的请求才会陆续收到回报,显著慢于只打一个请求(1.3s), 单个请求返回1GB时耗时10s显著慢于网卡的吞吐 **To Reproduce (复现方法)** http协议的server返回内容如下,value为大小为100MB或1GB的字符串 ``` std::string value(1024*1024*100, 'a'); cntl->http_response().set_status_code(200); cntl->http_response().set_content_type("text/plain"); cntl->response_attachment().append(value.c_str(), value.length()); ``` 打http请求 **Expected behavior (期望行为)** 当并发50个http请求,返回value为100MB时,50个请求在发出请求45秒后统一陆续返回。如果只有一个请求,返回value 100MB只需要1.3s。 一次请求,如果返回value为1GB,leave method耗时要10多s(不考虑rpc方法内的时间),请求端很久收到返回,延迟过高。 **Versions (各种版本)** OS:...

### 背景描述 我们在线特征服务通过redis协议,请求一个同机部署的data_mesh服务。该data_mesh服务使用brpc搭建,redis协议。data_mesh收到同机的特征服务的请求后,进行协议转换然后请求远端存储。特征服务和 data_mesh 在同一个 POD,通过 k8s 进行部署。k8s 对 data_mesh 所在的 docker 进行了绑核,绑定到了 1 个 CPU 核心上。 绑核是通过 k8s 的 资源限制 request/limit 来做的,而非 set_cpu_affinitiy 特征服务请求 data_mesh 走的是 127.0.0.1, 不经过网卡 ###...

**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)** mbvar达到上限 **Describe the solution you'd like (描述你期望的解决方法)** 达到bvar_max_dump_multi_dimension_metric_number后淘汰旧bvar **Describe alternatives you've considered (描述你想到的折衷方案)** **Additional context/screenshots (更多上下文/截图)**

feature

* 项目中依赖brpc作为第三方库时出现的报错问题: brpc中的mutex.cpp覆盖了pthread_mutex_lock的实现,疑似导致tsan识别不了bthread内部实现的pthread_mutex_lock,导致出现了告警,请问有办法解决这个warning吗?一个简单的复现方式 ```cpp #include #include #include namespace my::test { class TsanCheckTest : public ::testing::Test {}; int counter; std::mutex mutex_std; pthread_mutex_t mu; const int kIncrementsPerThread = 100; void* Locker(void*) {...

客户端请求服务端的连接超时时间已改到1秒,还是存在大量的E110错误,错误率基本到达100%,然后触发熔断。 更新了最新的brpc版本还是存在这个问题

**Describe the bug (描述bug)** 应用场景可以简化为client发起rpc请求,server收到请求后取回数据,并通过response attachment返回,追踪日志看: 1. fuse->rpc->worker 完成 2. worker收到响应->take data-> append to attachment完成 3. fuse侧hang住,直到报错 ``` E1031 07:32:53.252275 44 input_messenger.cpp:123] Fail to parse response from 33.51.173.89:19893 by baidu_std...