Некоторые запросы на моем сервере базы данных, кажется, требуют много времени для ответа, и я считаю, что загрузка ЦП высока. При работе ps aux
я вижу ~ 250 «незанятых» соединений (которых я считаю слишком много). Я не начал делать полный диагноз, но я хотел знать, является ли это хорошим местом, чтобы начать искать.
Я также использую PgBouncer с пулами на уровне транзакций. Я подозреваю, что могу легко уменьшить количество idle
подключений, настроив размер пула. Тем не менее, я не хочу начинать делать слишком много изменений, если нет веских причин для этого.
Могут ли многие idle
соединения в PostgreSQL 9.2 повлиять на производительность?
Огромное спасибо!
postgresql
database-design
performance
query-performance
Хуан Карлос Кото
источник
источник
Ответы:
Я серьезно сомневаюсь, что пустые соединения - ваша проблема. PostgreSQL очень способен обрабатывать неактивные сеансы, поскольку они почти не требуют ресурсов. Активные сеансы, с другой стороны, являются более вероятной причиной медлительности.
См. Https://wiki.postgresql.org/wiki/Number_Of_Database_Connections для справки о количестве соединений с базой данных.
источник