请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

IoStealingSelectorProvider的性能测试

图片描述

老师,我测试了下最终改版后的性能, 发现CPU暂用率比较高啊. 这是啥原因啊

正在回答 回答被采纳积分+3

1回答

Qiujuer 2020-02-19 10:24:35

说实话,咱们的整体设计是偏向于CPU密集型设计的;简单来说就是使用繁忙的CPU去承担内存的消耗。所以我们的内存缓存部分没有下多大的功夫。

另外在select()方法上的CPU消耗较高,这个可以使用一定的缓存,比如间隔10ms才检测一次,这会大大降低CPU使用率,但是在繁忙时会每次select后返回的数量较多,后续的单次批量处理更耗时一些。

具体等待多长时间,还是将CPU拿去做运算操作,这都需要看业务情况进行灵活调度才能达到最优。

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_胜在终点_0 #1
    就是说CPU占用高也不一定就是坏事对吧, 但是我在自己的电脑上跑的时候,很快就会卡着动不了了,在服务器上运行就不会有这种情况吧,捂脸.
    回复 有任何疑惑可以回复我~ 2020-02-19 14:50:02
  • Qiujuer 回复 提问者 qq_胜在终点_0 #2
    高不一定是坏事,有可能是在循环空转。可以尝试加日志确定CPU消耗的地方,从而想办法做CPU和内存之间的均衡。
    回复 有任何疑惑可以回复我~ 2020-02-20 00:12:21
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信