Оптимизация postgresql.conf для 1 GB RAM (легкий веб-сервер и микросервисы)

Обновлено: Август 2026 Стек: PostgreSQL 14/15/16, Linux Debian 12 / Ubuntu 24.04, 1 GB RAM Проверено: Production-Ready

Готовая конфигурация postgresql.conf для VDS с 1 GB RAM: расчет shared_buffers, work_mem, max_connections, WAL и чекпоинтов без падений по OOM.

Интерактивный генератор под ваши параметры
Параметры подставляются в код в реальном времени
/etc/postgresql/16/main/postgresql.conf
# /etc/postgresql/16/main/postgresql.conf (1 GB RAM)
max_connections = 50
shared_buffers = 256MB
effective_cache_size = 768MB
maintenance_work_mem = 64MB
checkpoint_completion_target = 0.9
wal_buffers = 7864kB
default_statistics_target = 100
random_page_cost = 1.1
effective_io_concurrency = 200
work_mem = 2621kB
min_wal_size = 512MB
max_wal_size = 2GB
logging_collector = on
log_min_duration_statement = 500ms
autovacuum = on
autovacuum_max_workers = 2
autovacuum_naptime = 1min
autovacuum_vacuum_scale_factor = 0.1

Разбор ключевых директив конфигурации

Техническое обоснование директив и их прямое влияние на процессор (CPU), оперативную память (RAM) и дисковый ввод-вывод (NVMe I/O).

Директива / Блок Рекомендуемое значение Зачем нужно и системное влияние (CPU / RAM / I-O)
shared_buffers = 256MB 256MB Буферный кэш PostgreSQL (25% RAM). Предотвращает дисковые обращения.
work_mem = 2621kB 2.5MB Лимит памяти на сортировку в SQL. Защищает от OOM-киллера.
effective_cache_size = 768MB 768MB Оценка кэша ядра ОС для оптимизатора планов запросов.

Рекомендуемые системные требования VDS под этот стек

Расчет минимальной и оптимальной конфигурации виртуального сервера для стабильной работы без сбоев.

Оптимальный сайзинг: 1 vCPU, 1 GB RAM, 20 GB NVMe
Timeweb Cloud
2 CPU / 4 GB NVMe
Рекомендуемые ресурсы
1 vCPU / 1 GB RAM / 20 GB NVMe
🔷 Selectel
2 vCPU / 4 GB RAM
Рекомендуемые ресурсы
1 vCPU / 1 GB RAM / 20 GB NVMe
🟠 Beget
Turbo 4 GB
Рекомендуемые ресурсы
1 vCPU / 1 GB RAM / 20 GB NVMe

Онлайн-утилиты SysKit для проверки этого сервера

Протестируйте корректность применения конфигурации прямо сейчас в один клик.

Частые ошибки при настройке и их решение (FAQ)

Типовые проблемы вебмастеров и сисадминов при внедрении данной конфигурации.

Как применить изменения без перезапуска сервера?
Выполните `sudo -u postgres psql -c 'SELECT pg_reload_conf();'`.
Что делать при нехватке памяти?
Создайте swap-файл на 1-2 GB: `fallocate -l 2G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile`.