Viji
@Viji
Associate DevOps Engineer

Что лучше использовать для нахождения количества активных соединений с базой?

Привет всем,

видел эту
postgres=> SELECT numbackends FROM pg_stat_database WHERE datname = 'my_super_db';


и эту
postgres=> SELECT count(*) FROM pg_stat_activity WHERE datname = 'my_super_db;


как по вашему опыту? PostgreSQL 12

всем добра,
Вадим
  • Вопрос задан
  • 41 просмотр
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
Без разницы. У них один и тот же источник данных. Можно и напрямую pg_stat_get_db_numbackends(oid) вызвать.

В production для мониторинга обычно используется pg_stat_activity чтобы сразу забрать группировку по статусам backend'ов, длительность активных транзакций. Ну и скорее всего только client backend будут интересны на этом графике (ну возможно ещё с parallel worker'ами). Для процессов autovacuum удобнее отдельный график иметь.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы