Rails on SQLite: exciting new ways to cause outages
by
André Arko
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
André Arko / Friendly.rb / September 10, 2025 Rails on SQLite exciting new ways to cause outages
Slide 2
Slide 2 text
Litestack litedb litecache litejob litecable litesearch litemetric Rails 8 sqlite3 solidcache solidqueue solidcable - -
Slide 3
Slide 3 text
Litestack litedb litecache litejob litecable litesearch litemetric Rails 8 sqlite3 solidcache solidqueue solidcable - -
Slide 4
Slide 4 text
who?
Slide 5
Slide 5 text
who? @indirect
[email protected]
Slide 6
Slide 6 text
bundler.io @indirect
[email protected]
Slide 7
Slide 7 text
bundler.io spinel.coop @indirect
[email protected]
Slide 8
Slide 8 text
bundler.io spinel.coop feedyour.email @indirect
[email protected]
Slide 9
Slide 9 text
feedyour.email
Slide 10
Slide 10 text
feedyour.email
Slide 11
Slide 11 text
feedyour.email
Slide 12
Slide 12 text
it’s “lite” by not having a process
Slide 13
Slide 13 text
instead it’s just a fi le
Slide 14
Slide 14 text
persist that fi le
Slide 15
Slide 15 text
one fi le is easy
Slide 16
Slide 16 text
too easy?
Slide 17
Slide 17 text
multi-process or multi-thread
Slide 18
Slide 18 text
now you scale vertically
Slide 19
Slide 19 text
high scale now means 🔒 lots of locks 🔒
Slide 20
Slide 20 text
WALs consolidate writers, allow many readers
Slide 21
Slide 21 text
but WALs mean extra fi les to track and back up
Slide 22
Slide 22 text
and/or: give each library its own database
Slide 23
Slide 23 text
db/production.sqlite3 db/production-cache.sqlite3 db/production-queue.sqlite3
Slide 24
Slide 24 text
db/production/user-1.sqlite3 db/production/user-2.sqlite3 db/production/user-3.sqlite3
Slide 25
Slide 25 text
there’s still just one server
Slide 26
Slide 26 text
deploys might create downtime
Slide 27
Slide 27 text
debugging is more localized
Slide 28
Slide 28 text
networking is simpler
Slide 29
Slide 29 text
migrate in or out with sequel
Slide 30
Slide 30 text
you’re also stuck in one spot now
Slide 31
Slide 31 text
CDNs are still helpful, though
Slide 32
Slide 32 text
backup & replication
Slide 33
Slide 33 text
litestream
Slide 34
Slide 34 text
litestream
Slide 35
Slide 35 text
liteFS
Slide 36
Slide 36 text
liteFS CAP + FUSE, oh boy
Slide 37
Slide 37 text
thanks, sqlite. theqlite.