this post was submitted on 11 Jan 2026
348 points (97.5% liked)

Selfhosted

60210 readers
1035 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] dan@upvote.au 38 points 5 months ago* (last edited 5 months ago) (1 children)

SQLite is underrated. I've used it for high traffic systems with no issues. If your system has a large number of readers and a small number of writers, it performs very well. It's not as good for high-concurrency write-heavy use cases, but that's not common (most apps read far more than they write).

My use case was a DB that was created during the build process, then read on every page load.

[–] derpgon@programming.dev 3 points 5 months ago (1 children)

Wow, I never thought about storing build data in an SQLite file. That's quite clever.

[–] dan@upvote.au 13 points 5 months ago* (last edited 5 months ago) (2 children)

One of SQLite's recommended use cases is as an alternate to proprietary binary formats: https://sqlite.org/appfileformat.html. Programs often store data in binary files for performance, but you get a lot of the same functionality included with SQLite (fast random access, concurrent usage, atomicity, updates that don't need to rewrite the whole file, etc) without having to implement a file format yourself.

I'm not sure if this is still the case, but Facebook'a HHVM used to store the compiled bytecode for the whole site in a single SQLite database: https://docs.hhvm.com/docs/hhvm/advanced-usage/repo-authoritative/. Every pageload loaded the bytecode for all required files from the DB.

[–] hoppolito@mander.xyz 3 points 5 months ago

Fascinating read, I should definitely also make way more use of sqlite for little side projects.
Thanks for the link!

[–] 0x0@lemmy.zip 2 points 5 months ago

They also have a (one-time fee) encryption extension.