MrGuin commented on issue #2000:
URL: https://github.com/apache/brpc/issues/2000#issuecomment-1455423880

   @wwbmmm 你好,更新一下我这边的新发现。
   
   首先是 redis_benchmark 是单线程的,之前的测试请求压力不够高,换成支持多线程的 memtier_benchmark 之后 
brpc-redis 和 redis 的 qps 都有显著提升,brpc 的 redis example 的 qps 达到 10w 左右,而 redis 的 
qps 能达到 17w。
   
   跑的时候 brpc-redis 的 cpu 明显是没满的,猜测可能是 epoll 线程瓶颈,然后我把 event_dispatcher_num 设成 2 
之后 qps 有明显上升,能达到 20w,而且 cpu 利用率高了很多,几乎能跑满 bthread_concurrency 对应的核数。并发设成 4 的情况下 
bthread_worker_usage 稳定在 3.74,process_cpu_usage 最终稳定在 3.68 左右。
   
   现在的问题增加并发无法带来 qps 提升,4 并发跟 9 并发的 qps 是几乎没有提升,19.9w 对比 20w,空有 cpu 消耗多了很多,9 
并发下 bthread_worker_usage 稳定在 6.6,process_cpu_usage 最终稳定在 7.0 左右。请问这里不 scale 
的可能原因是什么呢,因为 bthread 的调度不 scale?是否可能跟 brpc 针对 redis 协议单连接请求串行处理有关?
   
   另外就是相同机器下使用自带的 rpc_press 压测 echo example 测出来 qps 最多能稳定在 22w多接近 23w,是否可以认为这是 
brpc 的极限性能?brpc-redis 的 20w qps 是否还有提升空间呢?


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to