我们将 postgresql 从 9.3 升级到 9.6,我们发现升级后 postgresql 总共消耗了 75% 的 CPU。我们有基于 Web 的应用程序(JBOSS),它将与 postgresql 9.6 通信我们有性能测量脚本,它将调用 rest API 并运行 1 小时并收集整体 CPU 利用率。
使用以下配置,1 小时后的总体 CPU 利用率约为 75%。
postgresql.conf:
max_worker_processes=16
max_parallel_workers_per_gather=8
force_parallel_mode=on
shared_buffers=3GB
维护工作内存=1GB
backend_flush_after=1MB
bgwriter_flush_after=1MB
bgwriter_delay=10ms
min_wal_size = 1GB
max_wal_size = 2GB
同步提交=关闭
有效 io_concurrency = 100
max_prepared_transactions=1000
硬件配置
CPU = 8 核
内存 = 16GB
postgresql 数据目录驻留在 NFS 中。
这些性能峰值在 postgresql 9.3 中没有遇到(总体 CPU 消耗约为 50%)
有人可以帮忙吗?