Otherwise, if we have a lot of medium sized instances but the most popular communities are hosted on just a few huge instances, doesn’t that defeat the purpose of distributing load across many instances?
If that’s the case, how do we solve the cumbersome user experience of having to subscribe to the same community over and over again across a ton of medium instances?
If you post to a community that is hosted on a different server, your post is still stored on your home server. The community server is basically just the aggregator. If the community or server goes down the posts are still hosted on their respective home servers.
So if a home server goes down will those posts disappear from the community server? And what if it goes down temporarily and not permanently, do the posts stored on the home server temporarily disappear?
terminology wise, “home server of a community” and then there are remote-servers for that community. And Lemmy community/devs tend to call a “server” an “instance”. To answer your question… if a user is on a remote instance from a community, they are reading copies of the content in a local database. If the community home instance goes down, the copies will still be there in the remote servers. However, they are now in an isolated island and none of the other servers will get the new post and comments - as the home instance of a community does distribution. There isn’t any kind of warning indicator that you are on an isolated island.
Nothing disappears, but it is possible to have incomplete replication - have only some of the comments and posts and get an impression that nobody replied or that there isn’t much content.
Got it, I understand this a lot better now - thanks for the detailed reply!