I already get rate-limited like crazy on lemmy and there are only like 60,000 users on my instance. Is each instance really just one server or are there multiple containers running across several hosts? I’m concerned that federation will mean an inconsistent user experience. Some instances many be beefy, others will be under resourced… so the average person might think Lemmy overall is slow or error-prone.

Reddit has millions of users. How the hell is this going to scale? Does anyone have any information about Lemmy’s DB and architecture?

I found this post about Reddit’s DB from 2012. Not sure if Lemmy has a similar approach to ensure speed and reliability as the user base and traffic grows.

https://kevin.burke.dev/kevin/reddits-database-has-two-tables/

  • Max-P@lemmy.max-p.me
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    I’m not sure about the data being dropped, my instance was misconfigured for a day or two, and as soon as I fixed it, the data came right in. Instances repeatedly trying to push data to my instance is what clued me in that something was missing from my NGINX config. It backfilled pretty fast.

    Although I wouldn’t mind if there was a fallback pull mechanism to remediate failed pushes.

    • aaron
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 year ago

      Interesting. Curious if you have a better understanding of ActivePub - do you happen to know if the protocol guarantees synchonicity and what mechanism guarantees it?

      • Max-P@lemmy.max-p.me
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        I don’t, really going off on ~1 week of running my essentially single user instance and watching it do its thing. I need to read the spec and experiment with it when I have some more free time.

        Pure speculation but my guess would be that the servers are expected to retry for a certain amount of time. I know there’s been some tickets opened for some big instances going out of sync with eachother and fixes being worked on to address those. I don’t know if it only fixes it forward or if that also backfills.

        Also nothing preventing Lemmy from implementing a fallback way of doing a resync if it detects drift. “Hey lemm.ee, I lost everything since an hour ago, backfill please”.

        • aaron
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          Yeah, or batching changes and confirming receipt with a hash, or doing pull instead of push. From what I’ve been reading, the design seems a little janky.