← Все заметки

Когда SQLite в проде — взвешенное и практичное решение

Опубликовано: 11 июля 2026 • Чтение: 3 мин

Для проектов с умеренной нагрузкой (до сотен запросов в секунду) локальная SQLite на NVMe-накопителе часто работает быстрее Postgres просто за счет отсутствия оверхеда на сериализацию данных по TCP-сокету.

Обязательные PRAGMA для продакшена

По умолчанию SQLite работает в режиме отката журнала (delete/rollback), что блокирует параллельное чтение во время записи. Это решается одной строкой:

PRAGMA journal_mode = WAL;
PRAGMA busy_timeout = 5000;
PRAGMA synchronous = NORMAL;
PRAGMA foreign_keys = ON;

В режиме WAL читатели не блокируют писателей, а писатели не блокируют читателей. Бэкап снимается на лету без остановки сервиса командой VACUUM INTO '/backups/db_backup.sqlite';.