← На главную

Postgres не осилил много соединений за 10 лет — мечта URL как в MySQL

12.08.2026 20:13 · hackernews

Бен Дикен на днях публично отметил старую статью автора про управление соединениями с базами данных. Автор перечитал её и поразился: за десять лет почти ничего не изменилось. Postgres по-прежнему не очень умеет работать с большим числом соединений, поэтому приходится использовать локальные пулы, короткие сессии работы с соединением и пулер вроде PgBouncer. Чтобы понять, насколько пулер стал стандартом, автор составил таблицу по всем известным managed-провайдерам Postgres. Оказалось, что поддержка PgBouncer есть почти везде: его включают Aiven, Azure, ClickHouse Managed Postgres, Crunchy Bridge, DigitalOcean, EDB Postgres AI, Fly.io MPG, Heroku, Neon, PlanetScale, Railway, Render, Supabase, Tiger Cloud. AWS вместо PgBouncer предлагает отдельный RDS Proxy, а у Supabase есть также проприетарный Supavisor. Google Cloud SQL даёт PgBouncer только на тарифе Enterprise Plus. Не поддерживают пулер лишь IBM Cloud и OCI от Oracle, но эти сервисы в расчёт можно не брать — их используют только в корпоративных закупках. Выходит, что среди вменяемых провайдеров пулер есть у ста процентов.

Вроде бы всё хорошо. Но на самом деле это миллион лишней возни. Каждый провайдер придумывает свою схему настройки, свои правила, где искать Postgres, а где его пулер. Пользователям приходится изучать гайды про ограничения PgBouncer (тот же listen/notify) и разбираться в режимах пулинга. Автор сравнивает это с покупкой машины без лобового стекла. Ты видишь, что у всех на дороге стёкла есть, потому что без них опасно. Но если дилер продал тебе такую машину, формально это твоя проблема — поставить стекло. Хотя обижаться на дилера справедливо. Автор мечтает о мире, где провайдер Postgres выдаёт один URL, один порт, без лишней конфигурации и подводных камней. Так уже сделано в MySQL и Mongo. Почему в Postgres так не вышло? Есть причины, включая вечный спор «процессы против потоков», который почти никто не рискует ворошить. Но учитывая человеко-годы, потраченные на обход отсутствия нормального пулинга, это могло бы стать одним из самых полезных операционных улучшений.

Читать оригинал →