Another day, another update.

More troubleshooting was done today. What did we do:

  • Yesterday evening @phiresky@phiresky@lemmy.world did some SQL troubleshooting with some of the lemmy.world admins. After that, phiresky submitted some PRs to github.
  • @cetra3@lemmy.ml created a docker image containing 3PR’s: Disable retry queue, Get follower Inbox Fix, Admin Index Fix
  • We started using this image, and saw a big drop in CPU usage and disk load.
  • We saw thousands of errors per minute in the nginx log for old clients trying to access the websockets (which were removed in 0.18), so we added a return 404 in nginx conf for /api/v3/ws.
  • We updated lemmy-ui from RC7 to RC10 which fixed a lot, among which the issue with replying to DMs
  • We found that the many 502-errors were caused by an issue in Lemmy/markdown-it.actix or whatever, causing nginx to temporarily mark an upstream to be dead. As a workaround we can either 1.) Only use 1 container or 2.) set proxy_next_upstream timeout; max_fails=5 in nginx.

Currently we’re running with 1 lemmy container, so the 502-errors are completely gone so far, and because of the fixes in the Lemmy code everything seems to be running smooth. If needed we could spin up a second lemmy container using the proxy_next_upstream timeout; max_fails=5 workaround but for now it seems to hold with 1.

Thanks to @phiresky@lemmy.world , @cetra3@lemmy.ml , @stanford@discuss.as200950.com, @db0@lemmy.dbzer0.com , @jelloeater85@lemmy.world , @TragicNotCute@lemmy.world for their help!

And not to forget, thanks to @nutomic@lemmy.ml and @dessalines@lemmy.ml for their continuing hard work on Lemmy!

And thank you all for your patience, we’ll keep working on it!

Oh, and as bonus, an image (thanks Phiresky!) of the change in bandwidth after implementing the new Lemmy docker image with the PRs.

Edit So as soon as the US folks wake up (hi!) we seem to need the second Lemmy container for performance. So that’s now started, and I noticed the proxy_next_upstream timeout setting didn’t work (or I didn’t set it properly) so I used max_fails=5 for each upstream, that does actually work.

  • phiresky@lemmy.world
    link
    fedilink
    arrow-up
    43
    arrow-down
    1
    ·
    edit-2
    1 year ago

    server load is too low, everyone upvote more stuff so i can optimize more

    edit: guess there is some more work to be done 😁

  • kionay@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    You guys had better quit it with all this amazing transparency or it’s going to completely ruin every other service for me. Seriously though amazing work and amazing communication.

  • comcreator@lemmy.world
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    1 year ago

    The instance seems to be much better. Posting and commenting is not taking as long and loading times are way better. I hope things can stay this good or even get better.

  • Gnothi@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    This is why having a big popular instance isn’t all bad. It helps detect and fix the scaling problems and inefficiencies for all the other 1000s of instances out there!

    • This, if everyone kept just spreading out to smaller instances as suggested in the beginning, while still a sensible thing to do, no one would have noticed these performance issues. We need to think a few years out, assuming Lemmy succeeds and Reddit dies, and expect that “small instance” will mean 50k users.

      • deweydecibel@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        1 year ago

        I sincerely doubt reddit will die anytime soon, it’ll just exist as its own thing that it’s new target audience gets bored with and moves on from in a few years when something new and flashy catches their eye in the app store. Just like they do all the other apps designed in exactly the same fashion that reddit is currently morphing into.

        Meanwhile Lemmy will be slowly building it’s communities up to be what reddit used to be.

    • Bilb!@lem.monster
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I’m actually kinda waiting a few releases to start promoting my instance anywhere, letting some other brave instance admins work the kinks out a bit first.

  • sv1sjp@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    Thank you guys for your awesome work!

    Also to other people: DONATE TO FOSS PROJECTS. If 50.000 people donate only 0.5€, we have 25.000€ for funding the servers, coding, motivating/ people etc. Just don’t take a cup of coffee for 1 day. We are already 2 millions in Lemmy instances. We can build a decentralized world together!!

  • _Rho_@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    As a data engineer, I’d be interested in hearing more about the SQL troubleshooting.

    EDIT: It looks like !lemmyperformance@lemmy.ml is a good place to subscribe to for more technical info on some of these performance improvements.

    Also the Lemmy GitHub of course contains more information on bugs/enhancements/etc.

  • Aki@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Thank you so much for the hard work, time and money you spend into making lemmy.world run very smoothly. This much transparency is awesome for something that’s being used so massively.

  • xavier666@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Even though i’m not from this instance, this is such a nice way of keeping the users posted about changes. I wish more companies (I know this is not a company) went straight to the point, instead of using vague terms like “improved stability, fixed few issues with an update” when things are changed. I hope all instance owners follow this trend.

    • Ruud@lemmy.worldOPM
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      The owner of your instance has been a big help. You’ve also chosen a good instance!

  • KonQuesting@lemmy.sdf.org
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Thanks for the updates! Seeing the details of how you work through these early issues is valuable to those of us thinking of starting an instance.

  • CIA_chatbot@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 year ago

    It blows my mind with the amount of traffic you guys must be getting that you are only running one container and not running in a k8s cluster with multiple pods (or similar container orchestration system)

    Edit: misread that a second was coming up, but still crazy that this doesn’t take some multi node cluster with multiple pods. Fucking awesome

    • guyman@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      A lot of containerization is unnecessary and perpetuated by people who don’t know what they’re doing.

      • CIA_chatbot@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Kinda shitty dig there but whatever, I’m a certified k8s admin, I would say I’m pretty damn good with containers.

        With the amount of traffic I’m assuming lemmy.world gets I was just imagining it taking advantage of something more robust than just running Docker. It was more a comment on being impressed that lemmy must be damn efficient.