You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL升级及并行查询:max_worker_processes是否含postmaster后台进程

PostgreSQL参数与并行查询升级问题解答

1. max_worker_processes是否包含postmaster进程?

答案是不包含。这个参数统计的是PostgreSQL集群里,除了核心的postmaster主进程之外的所有后台工作进程——比如负责数据刷盘的bgwriter、检查点进程checkpointer、自动清理的autovacuum worker,还有你关心的并行查询专用worker进程,都算在这个参数的限额里。postmaster作为整个集群的父进程,是独立于这个计数之外的。

2. 从9.3升级到9.6并启用并行查询,默认设置下并行查询最多能启动多少后台进程?

首先纠正前提:因为max_worker_processes不包含postmaster,所以你假设的“最多2个”的情况并不成立。具体来看PostgreSQL 9.6的默认参数配置:

  • max_worker_processes默认值是8:这是所有非postmaster后台进程的总上限
  • max_parallel_workers_per_gather默认值是4:这个参数控制单条SQL查询最多能启动的并行worker数量

不过实际能用到的并行worker数还要看系统资源(比如CPU核心数)和其他后台进程的占用情况,但默认配置下,单条查询最多可以启动4个并行worker进程。如果你的业务有更高的并行需求,可以根据服务器的CPU核心数,适当调高这两个参数(比如把max_worker_processes设为CPU核心数的1.5-2倍,max_parallel_workers_per_gather设为核心数的一半左右)。

小提醒:升级到9.6后,记得先确认你的数据库实例已经开启了并行查询支持(9.6默认是开启的),同时要保证系统有足够的CPU资源来支撑并行执行,避免因为资源竞争反而降低性能。

内容的提问来源于stack exchange,提问作者user144368

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:04:10