You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brpc.apache.org by "alogfans (via GitHub)" <gi...@apache.org> on 2023/08/03 06:47:37 UTC
[I] 云存储场景下的 RDMA 优化 (brpc)
alogfans opened a new issue, #2344:
URL: https://github.com/apache/brpc/issues/2344
**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)**
在云存储场景中,随着 RDMA 的广泛使用,现有开源 brpc 的性能出现了明显的瓶颈:1)采用 completion channel + epoll 接收消息,不仅引入中断开销,还产生更多内核态切换;2)brpc 采用的 bthread 线程模型也具有较高的开销。
我们注意到你们在 ApacheCon 的技术报告,报告中所述的设计方案符合我们的需求。希望能将这些功能汇入主线,提高 brpc 的适用性。
https://apachecon.com/acasia2022/zh/sessions/rpc-1184.html
**Describe the solution you'd like (描述你期望的解决方法)**
拿掉目前基于 epoll 的处理逻辑,改用 busy polling (DPDK 或 RDMA)。正如你们在技术报告中所述,修改主要包含三个方面:
- 一是对bRPC线程模型的改造,接收请求消息 —— 处理 —— 发送响应消息在单一线程上连续执行(参考 https://github.com/apache/brpc/issues/1434);
- 二是对bRPC代码以及使用模块,主要包括原子变量、IOBuf以及序列化的裁剪和优化;
- 三是对bRPC使用rdma的改造设计,充分发挥rdma的性能优势。
**Describe alternatives you've considered (描述你想到的折衷方案)**
N/A
**Additional context/screenshots (更多上下文/截图)**
N/A
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "yanglimingcn (via GitHub)" <gi...@apache.org>.
yanglimingcn commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1705962226
请问去掉了bthread,polling模型下,用户的代码还能做到顺序执行吗?还是得实现callback这样的异步代码?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "20083017 (via GitHub)" <gi...@apache.org>.
20083017 commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-2681371684
弱弱的问一下,预计啥时候开源呢 期待ing
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "zhoumo02 (via GitHub)" <gi...@apache.org>.
zhoumo02 commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1705967847
你好!
目前在百度公司内部正在使用的版本,用户程序在发送rpc的时候只支持异步,这样可以做到不阻塞polling 线程,这个是一个比较容易想到的常规的考虑,但是缺点是对于已经上线多年的业务代码可能需要比较大的改造;我们也考虑到了有些业务程序需要支持同步rpc,因此在我们目前正在迭代的版本中,已经考虑了对同步rpc的支持,该版本正在研发设计当中
谢谢!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "rpbear88 (via GitHub)" <gi...@apache.org>.
rpbear88 commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1831681871
@zhoumo02 有最新的关于这块的开源计划进展吗?我们这边有新的项目开发计划,但是现在公开的rpc框架都没有这方面的支持,非常急切想看到brpc的功能合入。
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "zhoumo02 (via GitHub)" <gi...@apache.org>.
zhoumo02 commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1671250332
你好!
目前brpc在百度公司内部,使用polling模型、用户态协议栈、DPDK等技术已经发布了相关的版本,并在一些产品上取得了不错的性能收益,并且有计划在未来合适的时间开源出来
谢谢!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "yanglimingcn (via GitHub)" <gi...@apache.org>.
yanglimingcn commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1706115790
如果不想阻塞polling的线程,那看起来还是要走到协程这条路上来?有比bthread性能更好的方案吗?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org
Re: [I] 云存储场景下的 RDMA 优化 (brpc)
Posted by "zhoumo02 (via GitHub)" <gi...@apache.org>.
zhoumo02 commented on issue #2344:
URL: https://github.com/apache/brpc/issues/2344#issuecomment-1706491366
你好!
改成全异步的是一个方案;如果不想改成全异步的,可以考虑发送rpc的线程在polling 线程的外部,发送rpc的线程是单独的,发送rpc的时候,brpc内部可以考虑将rpc的发送过程封装成一个任务注入到polling 线程中去执行,这样发送rpc的线程因为在外部,所以不会阻塞polling线程,这个方案是我们内部一些业务采纳的方案,效果也是不错的;或者就是用bthread,在polling线程中增加同步的支持,这个我们内部正在设计研发
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@brpc.apache.org
For additional commands, e-mail: dev-help@brpc.apache.org