Lemmy
Everything about Lemmy; bugs, gripes, praises, and advocacy.
For discussion about the lemmy.ml instance, go to !meta@lemmy.ml.
I think lemmy will be bitten in the ass by not having considered clustering/horizontal scaling from the start. Federation alone as a scaling mechanism is only feasible for "nerds". But if the network wants to grow, we will need a few scale-able large hosted instances. And if their only choice is to scale vertically, there will be a hard limit (unless we put a good old Mainframe somewhere ^^).
Another downside of this design is: you can't run it with high availability. If there's only one process per instance, updating it will mean the whole instance is down. Sure, if all goes well this downtime is under a second. But if it doesn't go well or if a migration is needed, this might quickly become hours.
Indeed. If a big instance like lemmy.ml was to be shut down all the communities would be lost. This is simply not sustainable. Why would users put effort building a community if it could be gone at any time?
That however would be a different problem. A horizontally scaled instance would be able to cope with more users, but if it shuts down for monetary, personal, or whatever reason, it's still down.
Protecting a community from this is what the decentralized part is for. That is already in place.
(Although there is a middle ground where you could design the system in a way that one instance is mirrored and load-balanced across different hosters. That would actually also be quite interesting to have. But that's another layer of complexity on top.)
Protecting a community from this is what the decentralized part is for. That is already in place.
What? How is it solved exactly? If say lemmy.ml is down, what's the point of other servers existing, if most of the content and users are here? Like, I created a few new communities on lemmy.ml, which don't exist on say Beehaw because for some strange reason, the Beehaw admins don't allow users to create communities. So how is going to Beehaw help me, if lemmy.ml is unavailable? Okay, so you tell me I should go to a different server then. Maybe even make a new server. Done and done. But there's very few to zero users on that server, so those new communities and content created there might as well not exist. Also, even though Lemmy is federated, the homepage defaults to "local", so all the new users coming in may miss out on all the other federated communities, and, if I'm reading this correctly, the federation isn't even a fully automatic process, and some admins may even choose to put there server in a whitelist mode. All of it makes the whole "advantage" of federation, or at least Lemmy's version of it, seem kind of pointless.
It's like saying, "Hey, Gmail is down so you should just use Hotmail instead." Okay, so I can still send and receive emails, but I can't access any of my old emails for context, and none of my contacts can reach me using my Gmail address, and none of my filters, address book and other content is available so I may not even be able to reach out to my contacts and let them know what my new email is.
IMO the way the way the federation should've been designed is to use something like blockchain technology, so every instance basically has all the content and there's only one source of truth for user accounts and data (distributed ledger), or maybe even just implement the whole thing as a plain old high-availability cluster with load balancing.
Unless I'm missing something fundamental, I don't see how this decentralization is of any use if the content isn't there.
If say lemmy.ml is down, what’s the point of other servers existing, if most of the content and users are here?
There is no replication and failover so the problem is not solved.
blockchain technology
Urgh, no way. Replication and some basic message signing would be enough.
I believe the only way to get Lemmy working with every "refugees" is indeed to run organised instances. I'm thinking of a Circlejerk instance (yeah sorry, first example I had in mind) with all the jerk communities such as r/Watchescirclejerk, r/Carcirclejerk, etc... Could work for countries, car, music communities... I might be wrong though as I'm quite new to all of this.
Did my part and created an instance in the hopes of offloading some of the bigger instances: https://rammy.site
No clue if and how I should promote it, though. Looks like it's just me for now.
Is this why I can't create a new community? I've tried 3 times and it just keeps spinning when I hit submit.
Did you check that the community didn't already exist?
I did not! I'll own that, that was indeed my fault!
However, I didnt receive an error of any kind, once I clicked submit it just kept spinning with no reload or anything.
I'm going to open a GitHub issue for this.
Thank you for pointing that out!
Crashing with 994 users online?
that's not a good look
Yep Lemmy is over. We go back to Reddit now.
Ok. I have what might be a strange question. Can you host a server but disable community creation (even if only temporarily)? So, the server would essentially just be a platform from which others could access content published elsewhere in the Fediverse. I'm assuming the load would then be on the database behind my instance, correct?
I'm a Platform/Cloud/DevOps Engineer (the titles are always changing) working in software. I'm reasonably sure I could host an instance to help out without much difficulty. But I'm not sure I'm ready to jump into the moderator role, though I realize I'll need to deal with those who break some basic rules.
Sure. Just create a server and subscribe to communities. Then disable public registration. Anybody can read the content on your instance. So far as I know, you can read the content on any public instance without an account.
Or am I not understanding your question?
Ah, no - I think I just worded it poorly. I realize I could host my own instance for myself, but I meant hosting my own instance for myself and others. You know, to help spread the load. But I assume, then, they'd be able to create new communities on my instance/node.
Hi,
I setup my account on lemmy.ca. But it seems I cannot sign into lemmy.ml with this account (just getting busy spinning circle. On a high level I want to subscribe to some of the communities on lemmy.ml.
Thanks
After watching a video and looking around it looks like I was in error. Pretty much I can be signed into lemmy.ca ... then change he view filter to show all communities and subscribe to technology community on ML. The subscribe button does not always update right away. But in my listing of lemmy.ca I see I am subscribed. Hope this helps someone else.
Edit: If you moderate a large subreddit, do not link your users directly to lemmy.ml in your announcements
How/which URL should we link to then? Now is the best time to get users to switch to Lemmy so we need to make it as newbie friendly as possible. Already the application process has put off some people (I do like that bit though, keeps away the low effort folks). Thanks.
How/which URL should we link to then?
My (somewhat) hot take is that large migrating subreddits should probably host their own communities, which is what we did when we told people on r/PrivacyGuides to move to Lemmy. Or at the very least, actually coordinate with instance admins beforehand about all of this, clearly lemmy.ml isn't the ideal choice for this situation.
What if I wanted to create an instance where upvotes are disabled? Could that be possible? @nutomic
Is there a way to sort new Lemmy instances ? I check Lemmy on a daily basis for joining new instances that meet my interest. I wish there is a way to check only the new instances, maybe email notifications or something ?
Can I login to another instance with my lemmy.ml account? Or do I need multiple accounts?
It seems like a common issue among ActivityPub services that people flock to the most popular instance and this causes problems. Why can't load balancing happen transparently? It seems like the main thing that actually makes a difference between which instance users want to join is what the moderation will be like. Like I don't want to be forced to sign up for an instance with a high amount of censorship compared to the rest of instances.
So maybe user registration should start from a centralized site that can describe the trade-offs of joining the various instances, and users don't get to select their specific instance by default, but rather they select based on a loose moderation policy, and then load-balancing occurs on the backend.
EDIT: I also want to be able to migrate between instances without losing my community subscriptions.