this post was submitted on 09 Aug 2023
1034 points (98.4% liked)
Memes
45712 readers
1168 users here now
Rules:
- Be civil and nice.
- Try not to excessively repost, as a rule of thumb, wait at least 2 months to do it if you have to.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Each instance keeps a local copy of the communities they're federated with. Users of that instance interact with the local copy, and instances communicate with each other to tell what's going on.
This means that, if .world crashes at 5PM, and you have an account on lemm.ee, you can go to lemm.ee's local copy of world->worldnews, find a thread started at 4PM, comment on it, and other lemm.ee users will see and upvote/downvote your comment.
When .world is back on at 7PM, lemm.ee will tell it: "Hey, Cold_Brew_Enema said [Thanks a lot for the gold kind stranger] and got 6 downvotes", and .world will update the thread with your comment and downvotes for users of all instances to see.
This is my understanding of how it works, and I'm not familiar with the actual code, but it seems to be close to reality.
Excellent thank you!
There may be some things that don't get synced if the instance holding the pending federation messages also goes down or restarts because AFAIK they are stored in memory, not in persistent storage.
I'm not sure it works like that but it makes sense that way.