您如何 运行 生产环境中的 Postgres 服务器?
How would you run a Postgres Server in production?
我目前在 Docker 中使用 Django 和 Postgres。当尝试投入生产时,我会保留我当前的设置,在我的 django 旁边使用本地 Postgres 数据库服务器 运行 吗?
正如@LaurenzAlbe 所说,这取决于您要查找的内容。但在投入生产之前,有几件事需要确认。
默认配置的 Postgres 性能 很差。你应该做的一件事是优化你的 Postgres 设置。这个网站对我帮助很大:https://pgtune.leopard.in.ua/#/。它可能有点旧,但为优化提供了很好的起点。
设置您的备份很重要。要做出的一个重大决定是使用 WAL 还是只依赖数据库转储。当然你可以有一些第三方备份系统。 Postgres 参考:https://www.postgresql.org/docs/13/backup.html.
安全是重要的观点。 https://www.upguard.com/blog/10-ways-to-bolster-postgresql-security 是一个很好的清单。
有体面的日志记录真是太好了。对我来说,长查询日志对查看性能问题有很大帮助。通常有一个写得不好的查询会让你的用户等待。 https://www.postgresql.org/docs/13/runtime-config-logging.html
在投入生产之前,可能还有很多其他的事情要看。但从这些开始。
*** 编辑 ***
我可能理解错了你的问题。您可能会问是否应该在同一个节点/容器上拥有 DB 和 App,还是应该拥有单独的节点/容器。这取决于您需要多少扩展以及您拥有什么样的服务器环境。
无论如何,无论在哪里都需要配置数据库运行。所以我在这里留下我原来的答案。
我目前在 Docker 中使用 Django 和 Postgres。当尝试投入生产时,我会保留我当前的设置,在我的 django 旁边使用本地 Postgres 数据库服务器 运行 吗?
正如@LaurenzAlbe 所说,这取决于您要查找的内容。但在投入生产之前,有几件事需要确认。
默认配置的 Postgres 性能 很差。你应该做的一件事是优化你的 Postgres 设置。这个网站对我帮助很大:https://pgtune.leopard.in.ua/#/。它可能有点旧,但为优化提供了很好的起点。
设置您的备份很重要。要做出的一个重大决定是使用 WAL 还是只依赖数据库转储。当然你可以有一些第三方备份系统。 Postgres 参考:https://www.postgresql.org/docs/13/backup.html.
安全是重要的观点。 https://www.upguard.com/blog/10-ways-to-bolster-postgresql-security 是一个很好的清单。
有体面的日志记录真是太好了。对我来说,长查询日志对查看性能问题有很大帮助。通常有一个写得不好的查询会让你的用户等待。 https://www.postgresql.org/docs/13/runtime-config-logging.html
在投入生产之前,可能还有很多其他的事情要看。但从这些开始。
*** 编辑 ***
我可能理解错了你的问题。您可能会问是否应该在同一个节点/容器上拥有 DB 和 App,还是应该拥有单独的节点/容器。这取决于您需要多少扩展以及您拥有什么样的服务器环境。
无论如何,无论在哪里都需要配置数据库运行。所以我在这里留下我原来的答案。