Correct me if I’m wrong. I read ActivityPub standards and dug a little into lemmy sources to understand how federation works. And I’m a bit disappointed. Every server just has a cache and the ability to fetch something from another known server. So if you start your own instance, there is no profit for the whole network until you have a significant piece of auditory (e.g. private instances or servers with no users). Are there any “balancers” to utilize these empty instances? Should we promote (or create in the first place) a way how to passively help lemmy with such fast growth?
I wouldn’t say that caching is no profit. Yesterday there were several times when lemmy.ml was struggling or effectively down for some people, but despite complaints over there I could read lemmy.ml communities just fine through my instance. Caching meant that I was isolated from the service interruption, and the lemmy.ml server was isolated from my contribution to its load.
Well, lemmy.ml still needs to serve you the content the first time in order to cache it. And since you’re the only person in your instance, you’re the only person benefiting from that cache. So you’re still exerting at least the same load as if you were browsing lemmy.ml directly.
Not quite accurate… although probably reasonably close.
The activitypub transaction is just a small amount of text. The formatting and display of the page and tracking of user sessions and other transactional data that you would need to handle for the user itself…
Ultimately server->server transactions are much simpler and easier than server->user transactions.
Edit: one user instances are not helping much… But the moment you get 2 or more eyeballs on the same content on a remote instance… it starts to matter. Start a local instance with 10-100 users? You’re making a large dent in traffic on the origin (in relation to the content origin) server’s usage.
But only once, even if you open the content several times. And without transferring all the Web UI with it. And on the sending servers’ own terms related to when to send or if at all. On the other hand the server has to send any changes in a subscribed topic, regardless of you being interested in it.
Overall I still would still think it is a benefit to run your own instance.
this is an interesting concept - is Lemmy.blahaj.zone your personal instance, closed to registration from the public? I can totally see the draw in doing this and self hosting my own, then I don’t need to worry about performance of someone else’s instances
I wish, but lemmy.blahaj.zone is not mine, just one of the larger medium-sized instances that have been around for a while. But some people do do as you describe.
As I said, there is no profit from empty instances. Of course, the federation itself is good and fail-proof in this way. But if nobody asks for this cache, it’s just an Internet Archive of a sort.
It only takes one user for an instance to not be empty. Every bit of decentralisation adds resilience to the whole. But more decentralisation adds more resilience, so let’s try to spread out the communities and users.
I see—you’re talking about instances with no users? Yes, those don’t help much. Maybe edit the typo “a significant piece of auditory” in the original post, since I guessed that you were talking about instances with users but no communities.
Yeah, it’s nothing about communities. Technically speaking, only the amount of direct HTTP requests matters. If nobody opens your domain, your instance is just spending your money for nothing.
Instance A blocks instance B, which also blocks back. I create a single-userr instance and subscribe to communities on both.