首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找到最优的max_worker_processes?

如何找到最优的max_worker_processes?
EN

Stack Overflow用户
提问于 2021-07-12 16:42:59
回答 1查看 1.1K关注 0票数 0

但是,对于max_worker_processes的最优值,我找不到任何可靠的建议。

一些源假设值不应该高于可用内核的数量,但这是否正确,让服务器线程执行大量IO操作?

假设我有8个PG容器核心,并计划并行处理大约100个客户端。这是否可行,特别是在默认的max_worker_processes=8中?

任何可信的参考都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-12 17:15:19

合理的限制不取决于客户端连接的数量,而取决于并发查询的实际上限。

如果保证这些客户机中只有一个同时处于活动状态,则可以将max_worker_processesmax_parallel_workersmax_parallel_workers_per_gather设置为比存储所能处理的核数或并行I/O操作少一个,无论两者中的任何一个比较小。本质上,一个查询就可以消耗所有可用的资源。

另一方面,如果其中许多客户端可能同时运行查询,则应该通过将max_parallel_workers_per_gather设置为0来禁用并行查询,以避免数据库重载。

关于您对我的回答的评论:如果您的目标是限制活动查询的数量,请使用连接池。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68351047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档