this post was submitted on 20 Aug 2023
82 points (96.6% liked)

Fediverse

28362 readers
1562 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy

founded 1 year ago
MODERATORS
 

I've been on Lemmy for some time now and it's time for me to finally understand how Federation works. I have general idea and I have accounts on three federated instances, but I need some details.

Let Alpha, Beta, Gamma and Delta be four federated instances. I have an account on Alpha and create a post in a community on Beta. A persoson from Gamma comments on it and a person from Delta upvotes the post and the comment.

The question: On which instances are the post, the comment and the upvotes stored?

you are viewing a single comment's thread
view the rest of the comments
[–] Rottcodd@kbin.social 40 points 1 year ago (17 children)

As already noted, on all of them.

The easy way to grasp how it works:

When you, on instance.alpha, view a community on instance.beta, you aren't actually on community@instance.beta. You're actually on an entirely separate copy - community@instance.beta@instance.alpha. That's the community you're reading and posting to and upvoting/downvoting in. Meanwhile, people on other instances are each on their own locally hosted copies of the same community.

The lemmy software (or kbin or mastodon or whatever) then periodically syncs up all the local copies of community@instance.beta, so you all end up looking at (more or less) the same content, even though it's actually a bunch of technically separate communities.

[–] MagneticFusion@lemm.ee 15 points 1 year ago (12 children)

Doesn't that technically make the Fediverse inefficient?

[–] Rottcodd@kbin.social 46 points 1 year ago (2 children)

It's less efficient than a centralized forum would be, but efficiency isn't the only or even the highest priority. Decentralization is the explicit point of the fediverse, and to the degree that that requires sacrificing some measure of efficiency, that's just the way it goes.

The goal was to build a system that would be robust and relatively seamless while remaining decentralized. That's more or less what they've done. There's a fair amount of fine tuning and tweaking left to be done, and actively being done, but the basic system is what it is because it best balances all of the goals.

[–] Valmond@lemmy.mindoki.com 8 points 1 year ago (2 children)

Also, all data isn't stored on every Lemmy I stance, only (or mostly I guess) where it is relevant.

[–] ShittyKopper@lemmy.blahaj.zone 10 points 1 year ago (1 children)

As long as 1 person from an instance is subscribed to a community, that person's instance will fetch everything that happens inside that community (and keep storing it even if they later unsubscribe, unless manually purged by an instance admin)

[–] Valmond@lemmy.mindoki.com 7 points 1 year ago

So not everything everywhere but quite not that efficient ...

Thanks for the explanation.

[–] Rottcodd@kbin.social 3 points 1 year ago (1 children)

Right, which on a side note is most of why I have accounts on a number of different instances and regularly switch between them - because each instance is at least subtly different, since they each have different userbases, and thus somewhat different sets of subscribed and thus federated communities.

[–] nils@feddit.de 2 points 1 year ago (1 children)

But if you on instance.alpha subscribe to a community on instance.beta that would federate the community to your local instance, right? Is there something I'm missing?

[–] Rottcodd@kbin.social 1 points 1 year ago

Right, but of course if you don't subscribe to it (and nobody else does) then it doesn't.

So, for instance, if you go in through an account on a narrowly specialized instance, you're potentially not going to see a lot of the communities from other instances at all, even on their All, just because nobody's bothered to subscribe to them. And you'll likely see highly specialized communities that fit well with that instance that you might not see anywhere else.

The smaller the instance is, the more likely that is.

I have accounts on a couple of small instances on which I haven't even bothered to subscribe to anything, since their All already matches what I want frim the instsnce.

[–] MrSilkworm@lemmy.world 2 points 1 year ago

that's possibly the best explanation of the difference between a corporate social or other media and a decentralised open source one.

load more comments (9 replies)
load more comments (13 replies)