共享内存缓冲区 Postgresql

关于我的状态的一些背景:

我目前正在使用 OVH Advance 5 服务器(AMD Epyc 7451 - 24 c / 48 t - 128 GB 内存 - 450x2 GB SSD),我想知道我应该为 Postgresql 使用的规范。

我将使用多进程运行 24 个 Python 脚本和 24 个不同的池(使用 asynpg 连接),我通常会用掉大约 40 GB 的内存——这意味着我有大约 88 GB 的内存可以使用。

在我从未真正接触过 Postgres 的任何设置之前;我应该使用什么样的价值观:

共享内存/最大连接数/随机页面成本?

阅读它,它说建议共享内存通常应该占用大约 25% 的可用 RAM - 但其他消息来源说 2 - 4 GB 通常是最佳点,所以任何见解将不胜感激。


呼啦一阵风
浏览 108回答 1
1回答

桃花长相依

shared_buffers:从可用 RAM 的 25% 或 8GB 开始,以较低者为准。您可以运行性能测试以查看其他设置是否更适合您的情况。max_connections:保留默认值 100。如果您认为需要超过 50 个连接,请使用连接池 pgBouncer。random_page_cost:如果随机 I/O 和顺序 I/O 的存储速度一样快,请使用 1.1 的设置。否则,请坚持使用默认值 4。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python