brpc icon indicating copy to clipboard operation
brpc copied to clipboard

有支持Arena的计划吗

Open zhangh43 opened this issue 4 years ago • 6 comments

bprc现在无法兼容新版本的protobuf。protobuf不友好的引入了纯虚函数

#google/protobuf/message.h
 Message* New(Arena* arena) const override = 0;

brpc是否有支持这个feature的计划?

zhangh43 avatar Nov 04 '21 09:11 zhangh43

我也遇到了,看了下protobuf的提交记录,是今年九月份的一个commit: @399250367 改的,你把pb代码回退重编下吧,要不然用旧版本也行

image

Yejy813 avatar Nov 08 '21 16:11 Yejy813

谢谢 @Yejy813 我可以workaround,主要想问下brpc的开发者,是否有支持新版本protobuf的计划。

zhangh43 avatar Nov 09 '21 02:11 zhangh43

之前我们做过实验,在框架层面支持 arena 所带来的性能提升很微弱,所以没有推进支持

gydong avatar Nov 09 '21 06:11 gydong

之前我们做过实验,在框架层面支持 arena 所带来的性能提升很微弱,所以没有推进支持

在需要填充大量数据到Response中的情况下还是很有必要的,特别是业务代码都基于Arena的情况下,最后的数据Copy是明显的瓶颈。

xiweiw16 avatar May 07 '22 11:05 xiweiw16

之前我们做过实验,在框架层面支持 arena 所带来的性能提升很微弱,所以没有推进支持

在需要填充大量数据到Response中的情况下还是很有必要的,特别是业务代码都基于Arena的情况下,最后的数据Copy是明显的瓶颈。

你的需求是框架创建的request和response对象都在Arena中分配吗?

wwbmmm avatar May 07 '22 12:05 wwbmmm

之前我们做过实验,在框架层面支持 arena 所带来的性能提升很微弱,所以没有推进支持

在需要填充大量数据到Response中的情况下还是很有必要的,特别是业务代码都基于Arena的情况下,最后的数据Copy是明显的瓶颈。

你的需求是框架创建的request和response对象都在Arena中分配吗?

是的;不过我们的实际场景还需要业务能take the ownership of the arena for async usage of the subsequence logic

xiweiw16 avatar May 17 '22 09:05 xiweiw16