Я использую сервер Linux (Ubunto 18.04), на котором размещена база данных Postgres. PostgreSQL увеличивает загрузку ЦП до 100%, и иногда связанный с ним веб-сайт падает, но после перезапуска сервера сайт начинает работать нормально.
Выполнение запроса:
SELECT
(now() - pg_stat_activity.query_start) as interval, state
FROM pg_stat_activity
Результаты более сложные, чем запросы, выполняемые одновременно, отвечающие на запросы навигации по сайту и зависящие от количества подключенных пользователей.
Проблема в том, что при увеличении количества подключенных пользователей сайт блокируется, а после перезапуска сервера базы данных начинает работать нормально.
Не могли бы вы подсказать, как решить эту проблему?
Объем оперативной памяти сервера составляет более 23 ГБ.
решение1
Я считаю, что вам нужно увеличить пул соединений, а также общую память. Эта ссылка должна привести вас в нужное место.
https://stackoverflow.com/questions/30778015/how-to-increase-the-max-connections-in-postgres
Однако, оглядываясь назад, что делают пользователи, что приводит к этим блокировкам?