storaged进程占用CPU较高 该进程内reader-pool-pri占用较多cpu资源 reader-pool-pri的作用是什么

nebula 版本
部署方式:分布式
安装方式:RPM
是否为线上版本:Y
硬件信息
磁盘( 推荐使用 SSD)500G
CPU、内存信息 16C 64G
版本:2.6
问题的具体描述

请问这个reader-pool-pri作用是什么
是否能够配置以降低CPU使用率

这个进程是用来跑processor的,比如storage/query目录下的那些。这些processor都会在这个thread pool里跑。主要工作是分析request,访问rocksdb,构造response。所以除了必要的request分析和response构造,cpu使用大头就是rocksdb。CPU使用率高其实是好事。因为只有使用率高了,才能充分利用系统资源,提高QPS,降低延迟。当然,你可以尝试增加rocksdb block cache的大小,这样期望可以减少OS page cache的使用。RocksDB如果访问的数据在page cache里,需要对数据解压缩,会大量耗费CPU。但是block cache又存在mutex contention,在某些query下,性能不一定有page cache好。所以建议你可以先在保证qps不下降的情况下,尝试增加block cache大小。

3 个赞

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。