SQLite in Production: Lessons from Running a Store on a Single File
Summary
Production Rails store runs on SQLite across four databases in a single Docker volume with WAL mode enabling concurrent reads and a single writer. A rapid deployment overlap caused two orders to be lost when multiple containers accessed the same WAL file; the fix was to slow and batch pushes to main. The article also provides debugging tips with sqlite_sequence and discusses migration to PostgreSQL for true multi-writer concurrency.