Сколько коннекшенов было на Postgres?

Количество активных коннекшенов к PostgreSQL можно узнать с помощью запроса к системному представлению:

Короткий ответ

Что ответить на собеседовании

Количество активных коннекшенов к PostgreSQL можно узнать с помощью запроса к системному представлению:

Подробный разбор

Ответ с пояснениями

Количество активных коннекшенов к PostgreSQL можно узнать с помощью запроса к системному представлению:

SELECT count(*) FROM pg_stat_activity;

Если при нагрузке в 10 тысяч RPS не хватает коннекшенов, то:

  • Увеличьте параметр max_connections в конфигурации PostgreSQL, но это не всегда масштабируемо.
  • Используйте пул соединений (connection pool), например PgBouncer или встроенный пул в вашем приложении, чтобы переиспользовать коннекшены.
  • Оптимизируйте запросы и транзакции, чтобы они занимали меньше времени, уменьшая время удержания коннекшенов.
  • Рассмотрите горизонтальное масштабирование базы или шардирование, если нагрузка слишком велика.

В Go обычно применяют пул соединений через database/sql, который управляет количеством открытых коннекшенов:

db.SetMaxOpenConns(100) // ограничение максимального числа открытых коннекшенов

Таким образом, правильное управление пулом и оптимизация запросов — ключ к работе с большим количеством RPS.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее