TGViewer
Типичный программист Типичный программист @tproger · 78.1K subscribers
Post #14884 4.49K
Почему max_connections не ускоряет PostgreSQL

Пять тысяч разрешённых соединений выглядят как запас мощности, но пропускную способность PostgreSQL определяют ядра и хранилище. max_connections решает другое: сколько серверных процессов база допустит до отказа и сколько общей памяти заранее выделит под их структуры.

На PostgreSQL 18.6 рост лимита со 100 до 5000 увеличил общую память со 150 до 389 МБ. При этом 17-е активное соединение на машине с 16 ядрами уже добавляет переключения контекста и очередь. А 400 активных запросов с тремя хеш-объединениями каждый могут одновременно запросить 1200 порций work_mem.

Поэтому лимит стоит считать как бюджет, а приложения подключать через PgBouncer в режиме пула транзакций. Для большинства производственных систем расчёт с учётом репликации, мониторинга и ручных подключений даёт 100–300 соединений.
  • 🫡 10
  • 👍 5
  • 🔥 4
  • ❤ 3
  • 👏 2
  • 👎 1
  • 😐 1
  • 😴 1
  • 👨‍💻 1
  • 💘 1
  • 💊 1
More from @tproger
  1. Oct 5, 2026Дрон научили ориентироваться механическими усами В темноте, дыму и пыли камеры и лидар мог…
  2. Oct 5, 2026Как быстрые хеш-функции ломаются на специально подобранных данных Обычный бенчмарк показыв…
  3. Oct 4, 2026Kubernetes 1.37 перевёл rootless kubelet в beta В релизе Kubernetes 1.37 kubelet разрешили…
  4. Oct 4, 2026Исследователи заставили современную электронику выдавать данные по радио Метод InjectEave…
  5. Oct 4, 202618 тысяч тестов нашли то, что пропустили 185 обычных При переносе robfig/cron с Go на Rust…
  6. Oct 4, 2026Переход на ветку в присланном проекте запустил бы вредоносный Git-hook Разработчику Фрэнку…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →