this post was submitted on 11 Jan 2026
294 points (97.4% liked)

Selfhosted

61428 readers
325 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. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

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
[–] call_me_xale@lemmy.zip 33 points 7 months ago (1 children)

Hell, even SQLite is good enough for most small projects.

[–] dan@upvote.au 23 points 7 months ago* (last edited 7 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 1 points 7 months ago (1 children)

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

[–] dan@upvote.au 9 points 7 months ago* (last edited 7 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.

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

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

[–] hoppolito@mander.xyz 1 points 7 months ago

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