When building for reliability with SQLite, which architectural approach do you find most compelling for your use case?

The Evolution of Distributed SQLite: Which Strategy Wins?

Since the 2014 release of rqlite, the landscape of distributed SQLite has expanded into a diverse category of technologies. The core debate lies in how to handle data availability and consistency. Philip Otoole traces the history from rqlite's use of the Raft consensus protocol-a CP system designed to prevent data loss through majority acknowledgment-to newer, different philosophies. For instance, Ben Johnson's Litestream focuses on disaster recovery by streaming the SQLite Write-Ahead Log (WAL) to S3, prioritizing simplicity and cost-effective recovery over real-time clustering. Meanwhile, Fly.io's LiteFS introduces replication at the filesystem level using leases from Consul, and cr-sqlite explores an AP approach using CRDTs to allow divergent writes that eventually merge. While rqlite provides a standalone server for immediate consistency, Litestream addresses the more common need for single-node recovery. Choosing between these methods requires weighing the need for immediate consistency against the benefits of eventual convergence or the simplicity of asynchronous disaster recovery.

Options

  • Consensus-based replication (e.g., rqlite using Raft)
  • WAL streaming for disaster recovery (e.g., Litestream to S3)
  • Filesystem-level replication with leases (e.g., LiteFS)
  • CRDT-based multi-writer convergence (e.g., cr-sqlite)

Pollopolis — the city of opinion