我正在使用托管 Postgres 数据库的 Linux 服务器 (Ubunto 18.04)。PostgreSQL 使 CPU 使用率高达 100%,有时相关网站会关闭,服务器重新启动后,网站就会恢复正常运行。
运行查询:
SELECT
(now() - pg_stat_activity.query_start) as interval, state
FROM pg_stat_activity
结果不仅仅是同时运行复杂的查询来响应站点导航请求并且取决于连接的用户数量。
问题是随着连接用户数量的增加,网站会被阻止,重新启动数据库服务器后就可以正常工作。
你能告诉我如何解决这个问题吗?
服务器 RAM 超过 23GB。
答案1
我认为您必须增加连接池以及共享内存。此链接应该可以帮您找到正确的位置。
https://stackoverflow.com/questions/30778015/how-to-increase-the-max-connections-in-postgres
但回想起来,用户到底做了什么才导致这些锁定?