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...
See https://github.com/apache/brpc/pull/2722#issuecomment-2272559689 inspired by unreflectable_message of @oathdruid. ### What problem does this PR solve? Issue Number: #2757 Problem Summary: 隔离 Protobuf Message API,简化内部消息类型实现,简化后续 Protobuf 适配工作,支持 Protobuf 到 v5.28.0 ### What...
利用request_attachment传输snappy压缩后的二进制数据,在请求量偏大时,从request_attachment取出该数据,存在数据丢失问题。 
各位大佬我知道这个问题很trival,但是能力有限还是无法解决所以提了一个issue。 请问如何利用brpc这个库构建一个自己的cpp,具体而言有什么方法可以做到像引入一个第三方头文件```#include```这样来调用brpc的方法。 文档里给的都是编译使用给定的example,而似乎没有提及怎么使用brpc写自己的app,还请各位大佬指教。
**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)** 日志一直在打 ERROR Too many stats seen, overflow detected, max stats count:20000 看着这个变量是写死的 `constexpr uint64_t MAX_MULTI_DIMENSION_STATS_COUNT = 20000; ` ` if (metric_map_ptr->size()...
### What problem does this PR solve? Issue Number: Problem Summary: ### What is changed and the side effects? Changed: Side effects: - Performance effects(性能影响): - Breaking backward compatibility(向后兼容性): ---...
使用centos7按照文档编译brpcmaster分支,无法编译通过,通过issue查找发现pb版本,gflag版本不对,又升级pb,gflag ,在次编译,又发现版本不对;能不能给个brpc的各个版本依赖信息呀
**Describe the bug (描述bug)** brpc使用clang编译时,运行example/streaming_echo_c++会出现core dump **To Reproduce (复现方法)** 编译brpc: `mkdir build && cd build export CXX=clang++ cmake .. -G Ninja && ninja ` 编译/example/streaming_echo_c++ `mkdir build && cd build...
**Describe the bug (描述bug)** **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: Compiler: brpc: protobuf: **Additional context/screenshots (更多上下文/截图)** src/bthread/key.cpp:37:14: error: expected constructor, destructor, or type conversion before ‘(’ token...
看实现是类似一个一个MPSC的无锁队列。 多个producer会通过exchange保证调用顺序和WriteRequest的插入顺序是一致的。在single consumer写之前,会找到old_head和new_head之间的WriteRequest进行链表反转,然后往fd里写出这一部分数据。 一般实现是:单纯的单链表,维护一个head和一个tail指针,producer在tail插入新的WriteRequest,而consumer在head处消费。 请问这样的一般实现和目前的实现相比,目前的实现会有哪些advantage么?是否目前的实现使得插入和消费实际上是在两个互不相干的链表上从而减少了需要race的场景?
**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)** The brpc vcpkg port depends on protobuf. Since vcpkg maintains a single-version scheme, updating protobuf requires brpc to support it. **Describe...