Closed debuger6 closed 1 year ago
尝试下减少thread pool size。这个参数表示实际do command的线程数目。当该参数设置过大,线程都去争抢一个任务。时间耗费在系统调用上面。
尝试下减少thread pool size。这个参数表示实际do command的线程数目。当该参数设置过大,线程都去争抢一个任务。时间耗费在系统调用上面。
调成 32 测试了下,同时开两个压测程序能够将 cpu 压到 2200% 左右,负载压到 30 左右,总的 qps 为 38w,效果还是比较明显。 我看最佳实践里写的是 thread-num 最好设置成机器的核数,thread-pool-size 设置为 thread-num 的两倍。感觉 thread-pool-size 的设置可能得分场景,如果大部分情况下在内存能够完成的操作,线程池不能设置过大,如果存在较多的磁盘 io,改值可以按照最佳实践来设置。
vire-benchmark -T 可以设置并发数目。理论上性能可以再高一点。
vire-benchmark
vire-benchmark 可支持多线程 redis 压测。
问题描述: 机器配置:32c256g,4*ssd 压测工具:vire-benchmark 压测结果:
cpu 使用率:1200%,系统负载:14,io基本无压力。压测结果和预估差距太大,之前测试过16c128g 机器,性能还比这次的好,这点无法理解,请帮忙分析下。
pika 配置如下: