Like does content get mirrored to my instance and then mine distributes it ala BitTorrent or is my instance it’s own thing?
In effect, not really.
All the communities you’re subscribed to will now also have to push all their updates (posts, comments, upvotes) to your server, even when you’re not interacting with Lemmy.
As someone else mentioned, it would only be efficient once you have a decent (hard to pinpoint) amount of users on your server.
They’ll do it once, though. Then every time you view it, you’re helping the bigger servers by serving it from your instance.
Yes. Once for every post, comment and vote.
So say you have your own personal instance, and you use that to follow community news
on lemmy.world. If throughout the day that community receives 10 new topics, 50 comments and 100 upvotes, it would have to make 160 calls to your server.
So when you decide to read those 10 topics (if you even read all of them), you would then make roughly 10 api calls.
You would be saving those last mentioned 10 calls by using your own instance, but at the cost of 160 calls made throughout the day.
So you need just 15 more users on your instance to break even, if you have 17 in total, you’ve saved 10 calls.
The thing is that when you interact with the remote server directly it’s not 10 api calls, it’s 10 full-blown HTML webpages that have to be served to you, which are way bigger than REST API calls.
I run my own instance because the content on it will always be very snappy, since it mirrors the text content that I’m subscribed to. It’s distributed like email or RSS are, in that you choose to subscribe to something, and then it is federated onto your instance when new activity occurs.
Text gets mirrored but not images. In general it helps, but not by much unless you host for several hundred users.
Link thumbnails do get mirrored. My understanding is the front end of Lemmy is pretty heavy for the big instances and the burden of federating to another instance is pretty small. One thing I’ve noticed on my instance is that sometimes inbound federation can be pretty annoyingly slow.
Not only annoyingly slow, but I tend to get a massive influx of posts from one community all at once. It fills my entire page with that single community. It’s been my biggest annoyance so far.
This is fixed in 0.18.x
I’m running 0.18.1-rc.4 and it’s fixed lots of issues
Your instance is it’s own thing and will only push data that’s from communities created on your instance to others.
However, since your instance will have limited users, it will consume fewer resources and your browsing experience would be faster.
I’m not sure of where the limits are on the pushing side of things. If people from a lot of instances are subscribed to a particular community in an instance, there is a lot of outgoing data from there. This is something I’m curious about.
I think I’m going to host my own. I have a bunch of good, short domains I could set it up with.