我们有一台运行 Postgres 12 数据库的专用服务器,其配置如下:
型号:HPE ProLiant DL580 Gen9
CPU:4*Intel(R) Xeon(R) CPU E7-4850 v3 @ 2.20GHz
内存:128 GB
Ubuntu 18.04.4 LTS
Postgre SQL 12
问题是 CPU 使用率从未达到 50%。当我检查 ZABBIX 日志时发现,当 CPU 使用率超过 40% 时,COU Softirq time
如下所示:
当我检查 PRTG 日志时,发现了一些奇怪的事情;一些 CPU 的利用率高达 80%,但大多数都低于 20。
这里发生了什么?我怎样才能使用所有 CPU?
答案1
您描述的是一两个密集查询。根据经验,Postgres 将使用多个核心,但每个查询都绑定到单个核心/线程(相关 I/O 可以位于其他核心上