this post was submitted on 30 Sep 2023
5 points (100.0% liked)
Self Hosted - Self-hosting your services.
16314 readers
1 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
- No harassment
- crossposts from c/Open Source & c/docker & related may be allowed, depending on context
- Video Promoting is allowed if is within the topic.
- No spamming.
- Stay friendly.
- Follow the lemmy.ml instance rules.
- Tag your post. (Read under)
Important
- Lemmy doesn't have tags yet, so mark it with [Question], [Help], [Project], [Other], [Promoting] or other you may think is appropriate. This is strongly encouraged!
Cross-posting
- !everything_git@lemmy.ml is allowed!
- !docker@lemmy.ml is allowed!
- !portainer@lemmy.ml is allowed!
- !fediverse@lemmy.ml is allowed if topic has to do with selfhosting.
- !selfhosted@lemmy.ml is allowed!
If you see a rule-breaker please DM the mods!
founded 4 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The problem here, to my understanding (context: I work in IT, but I'm not claiming to have a PhD in comp sci or whatever) is that something like BOINC works because the computation is highly self contained. Basically you're just working through a list of math problems.
But something like, say, Lemmy or Mastodon isn't really all that heavy on raw math. Instead it's all about referencing items in databases, and dynamically assembling them into pages that are presented to a user. So it's mostly about a) storing information, and b) accessing the stored information.
You can't really offload that, because you have to be able to trust that wherever you're putting the data, it'll still be there when you need it. Not very easy when you might just turn your PC off at night... Or have a power outage. You also have to deal with the security and privacy issues involved in placing that data on random people's computers.
Then you have the problem of connection speeds. Consumer internet connections typically have pathetic upload speeds. Generally the biggest issue with doing any kind of distributed database is that you need lightning fast communication speeds between every component. This is why no one builds distributed databases.
Once you actually present the data to the user's PC, most of the "processing" happens on their end, so you're already donating as much power as you reasonably can.
Like I said, I'm not a hardcore computer scientist, so there might be something in missing here, but to my understanding there's really no way that you could usefully leverage any kind of "borrowed" processing power for any sort of platform or service outside of the very narrow field of "crunching big numbers."