With forewarning about a huge influx of users, you know Lemmy.ml will go down. Even if people go to https://join-lemmy.org/instances and disperse among the great instances there, the servers will go down.

Ruqqus had this issue too. Every time there was a mass exodus from Reddit, Ruqqus would go down, and hardly reap the rewards.

Even if it’s not sustainable, just for one month, I’d like to see Lemmy.ml drastically boost their server power. If we can raise money as a community, what kind of server could we get for 100$? 500$? 1,000$?

  • Nutomic@lemmy.mlM
    link
    fedilink
    arrow-up
    53
    arrow-down
    2
    ·
    2 years ago

    The site currently runs on the biggest VPS which is available on OVH. Upgrading further would probably require migrating to a dedicated server, which would mean some downtime. Im not sure if its worth the trouble, anyway the site will go down sooner or later if millions of Reddit users try to join.

      • makingStuffForFun@lemmy.ml
        link
        fedilink
        arrow-up
        12
        ·
        2 years ago

        We need Self hosted team and team networking to represent. Would be amazing to see some community support in scaling Lemmy up.

      • Nutomic@lemmy.mlM
        link
        fedilink
        arrow-up
        9
        ·
        2 years ago

        Can we replace Lemmy.ml with Join-lemmy.org when Lemmy.ml is overloaded/down?

        I dont think so, when the site is overloaded then clients cant reach it at all.

        Does LemmyNet have any plans on being Kubernetes (or similar horizontal scaling techniques) compatible?

        It should be compatible if someone sets it up.

        • Leigh@lemmy.ml
          link
          fedilink
          arrow-up
          8
          ·
          2 years ago

          You could configure something like a Cloudflare worker to throw up a page directing users elsewhere whenever healthchecks failed.

          • Nutomic@lemmy.mlM
            link
            fedilink
            arrow-up
            17
            arrow-down
            1
            ·
            2 years ago

            Then cloudflare would be able to spy on all the traffic so thats not an option.

            • Leigh@lemmy.ml
              link
              fedilink
              arrow-up
              12
              arrow-down
              5
              ·
              2 years ago

              spy on all the traffic

              That’s…not how things work. Everyone has their philosophical opinions so I won’t attempt to argue the point, but if you want to handle scale and distribution, you’re going to have to start thinking differently, otherwise you’re going to fail when load starts to really increase.

            • Cadende@lemmygrad.ml
              link
              fedilink
              arrow-up
              3
              ·
              edit-2
              2 years ago

              A better option for a simple usecase like that is using something from your DNS provider. Depending on who you use they may have a health check service that has no access to user data that can simply ping a URL, and if it fails hard enough, start redirecting traffic to join-lemmy.org

              I think Constellix has it, though I’m not necessarily recommending them specifically

    • Lobstronomosity@lemmy.ml
      link
      fedilink
      arrow-up
      25
      arrow-down
      1
      ·
      edit-2
      2 years ago

      I’m sure you know this, but getting progressively larger servers is not the only way, why not scale horizontally?

      I say this as someone with next to no idea how Lemmy works.

        • Lobstronomosity@lemmy.ml
          link
          fedilink
          arrow-up
          14
          ·
          edit-2
          2 years ago

          Is it possible to make Lemmy (the system as a whole) able to be compatible with horizontally scaling instances? I don’t see why an instance has to be confined to one server, and this would allow for very large instances that can scale to meet demand.

          Edit: just seen your other comment https://lemmy.ml/comment/453391

          • Nutomic@lemmy.mlM
            link
            fedilink
            arrow-up
            24
            ·
            2 years ago

            It should be easy once websocket is removed. Sharded postgres and multiple instances of frontend/backend. Though I don’t have any experience with this myself.

            • wiki_me@lemmy.ml
              link
              fedilink
              arrow-up
              13
              ·
              2 years ago

              I think that is unavoidable, Look at the most popular subreddits , they can get something like 80 million upvotes and 66K comments per day, do you think a single server can handle that?

              Splitting communities just so that it will be easier technically is not good UX.

            • ccunix@lemmy.ml
              link
              fedilink
              arrow-up
              7
              ·
              2 years ago

              There is already a docker image so that should not be too hard. I’d be happy to set something up, but (as others have said) the DB will hit a bottleneck relatively quickly.

              I like the idea of splitting off the image processing.

    • Pisck@lemmy.ml
      link
      fedilink
      arrow-up
      24
      ·
      2 years ago

      There will either be an hour of downtime to migrate and grow or days of downtime to fizzle.

      I love that there’s an influx of volunteers, including SQL experts, to mitigate scaling issues for the entire fediverse but those improvements won’t be ready in time. Things are overloading already and there’s less than a week before things increase 1,000-fold, maybe more.

    • Ashwag@lemmy.ca
      link
      fedilink
      arrow-up
      6
      ·
      2 years ago

      So reading this correctly, it’s currently a hosting bill of 30 Euro a month?

    • Divided by Zer0@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      Do you have the frontend a DB serving in the same VPS? If so it would be a great time to split them. Likewise if you DB is running in a VPS, you’re likely suffering from significant steal from the hypervisor so you would benefit from switching to a dedicated box. My API calls saw a speedup of 10x just from switching from a VPS DB to a Dedicated Box DB.

      I just checked OVH VPS offers and they’re shit! Even at 70 Eur dedicated on hetzner, you would gain more than double those resources without steal. I would recommend switching your DB ASAP for immediate massive gains.

      If you’re wondering why you should listen to me, I built and run https://aihorde.net and are handling about 5K concurrent connections currently.

      • Nutomic@lemmy.mlM
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        2 years ago

        Hetzner is very strict about piracy so thats not an option. And now is almost weekend so I wont have time for a migration. Anyway there are plenty of other instances in case lemmy.ml goes down.

        Edit: I also wouldnt know which size of dedicated server to choose. No matter what I pick, it will get overloaded again after a week or two.

        • Divided by Zer0@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          2 years ago

          Even if you choose Hetzner, it won’t even know it has anything to do with piracy because it will be just hosting the DB, and nobody will know where your DB is. That fear is overblown.

          Likewise believe me a dedicated server is night and day from a VPS.

  • EyesOfTheWatcher@lemmy.ml
    link
    fedilink
    arrow-up
    37
    ·
    2 years ago

    I’m a Reddit refugee (new number who dis?)

    I’m in the processing of closing on a house/moving so i don’t have a ton of extra money or time laying around, but I work in tech as a junior Linux admin with some experience with some big data tech (HDFS, some Spark, Python, etc).

    How can I help?

  • RoundSparrow@lemmy.mlBanned
    link
    fedilink
    arrow-up
    24
    ·
    edit-2
    2 years ago

    Based on looking at the code and the relatively small size of the data, I think there may be fundamental scaling issues with the site architecture. Software development may be far more critical than hardware at this point.

    • OsrsNeedsF2P@lemmy.mlOP
      link
      fedilink
      arrow-up
      14
      ·
      2 years ago

      What are you seeing in the code that makes it hard do scale horizontally? I’ve never looked at Lemmy before, but I’ve done the steps of (monolithic app) -> docker -> make app stateless -> Kubernetes before and as a user, I don’t necessarily see the complexity (not saying it’s not there, but wondering what specifically in the site architecture prevents this transition)

      • RoundSparrow@lemmy.mlBanned
        link
        fedilink
        arrow-up
        41
        ·
        edit-2
        2 years ago

        Right now it looks to me like Lemmy is built all around live real-time data queries of the SQL database. This may work when there are 100 postings a day and an active posting gets 80 comments… but it likely doesn’t scale very well. You tend to have to evolve to a queue system where things like comments and votes are merged into the main database in more of a batch process (Reddit does this, you will see on their status page that comments and votes have different uptime tracking than the main website).

        On the output side, it seems ideal to have all data live and up to the very instant, but it can fall over under load surges (which may be a popular topic, not just an influx from the decline of Twitter or Reddit). To scale, you tend to have to make some compromises and reuse output. Some kind of intermediate layer such as every 10 seconds only regenerate the output page if there has been a new write (vote or comment change).

        don’t necessarily see the complexity (not saying it’s not there

        It’s the lack of complexity that’s kind of the problem. Doing direct SQL queries gets you the latest data, but it becomes a big bottleneck. Again, what might have seemed to work fine when there were only 5000 postings and 100,000 total comments in the database can start to seriously fall over when you have reached the point of accumulating 1000 times that.

          • poVoq@slrpnk.net
            link
            fedilink
            arrow-up
            6
            ·
            2 years ago

            The advantage kbin has is that it is build on a pretty well known and tested php Symphony stack. In theory Lemmy is faster due to being built in Rust, but it is much more home-grown and not as optimized yet.

            That said, kbin is also still a pretty new project that hasn’t seen much actual load, so likely some dragons linger in its codebase as well.

            • sam_uk@slrpnk.net
              link
              fedilink
              arrow-up
              2
              ·
              2 years ago

              I think it’s probably undesirable to end up with big instances. I think the best situation might be one instance that’s designed to scale. This could be lemmy.ml or another one. It can absorb these waves of new users.

              However it’s also designed to expire accounts after six months.

              After three months it sends users a email explaining it’s time to choose a server, it nags them to do so for a further three months. After that their ability to post is removed. They remain able to migrate their account to a new server.

              After 12 months of not logging in the account is purged.

  • OsrsNeedsF2P@lemmy.mlOP
    link
    fedilink
    arrow-up
    18
    arrow-down
    1
    ·
    2 years ago

    I’m also willing to donate to other instances too - Beehaw, Sopuli, Lemmygrad, Lemmyone - Anything so we can have better shock absorption. If you run one of those instances, please reply and let us know how much you think you need

  • t�m@lemmy.ml
    link
    fedilink
    English
    arrow-up
    11
    ·
    2 years ago

    This is why I also subscribe to the communities on mastodon just in case

    • top@lemmy.ml
      link
      fedilink
      English
      arrow-up
      10
      ·
      2 years ago

      can you interact with mastodon on here? sorry if it’s a stupid question, i am new to the whole fediverse thing.

      • Krusty@feddit.it
        link
        fedilink
        English
        arrow-up
        11
        ·
        2 years ago

        Yes you can :) There are no stupid question, we’re not accostumed to these kind of structures for social networks so it’s very normal to have them. I can suggest some video like this to understand better how federation works

        • maltfield@lemmy.ml
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          2 years ago

          Can you post a video or written guide that shows me [a] how to actually see lemmy content inside mastodon and [b] how to see mastodon content inside lemmy?

          Explainer videos are good, but I want to see screenshots of the UI and step-by-step instructions.

  • kinther@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    2 years ago

    I’m in the process of setting up a raspberry pi to host an instance, but the documentation is not super helpful. I’ll slog through it and issue a PR once co.plete so others may not have the same issues.