https://github.com/LemmyNet/lemmy/issues/3245

I posted far more details on the issue then I am putting here-

But, just to bring some math in- with the current full-mesh federation model, assuming 10,000 instances-

That will require nearly 50 million connections.

Each comment. Each vote. Each post, will have to be sent 50 million seperate times.

In the purposed hub-spoke model, We can reduce that by over 99%, so that each post/vote/comment/etc, only has to be sent 10,000 times (plus n*(n-1)/2 times, where n = number of hub servers).

The current full mesh architecture will not scale. I predict, exponential growth will continue to occur.

Let’s work on a solution to this problem together.

  • King@vlemmy.net
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    Yes, it is a “full mesh” diagram. But for each specific “federated” action, it is a simple hub and spoke distribution. The hosting server will send the federated action to each subscribed node. The nodes don’t need to check in with each other for that specific action.

    I too believe that Federation is going to have scaling issues. But not due to full mesh

    • HTTP_404_NotFound@lemmyonline.comOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      I am onboard with you there-

      But, would not not agree- delegating and offloading those federation actions to a dedicated pool of servers, would not assist scalability?

      That way- each instance doesn’t need to maintain all of the connections?

      • King@vlemmy.net
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 year ago

        There is no need to “maintain all of the connections”. The server opens a connection, sends the data, then closes the connection.

          • Fauxreigner@beehaw.org
            link
            fedilink
            English
            arrow-up
            0
            ·
            1 year ago

            Federation isn’t working well, but it’s not working well because the big instances aren’t able to keep up with all of the inbound/outbound messages, and if a message fails, that’s it. Right now there’s no automated way to resync and catch up on missed activity.

            • cyd@vlemmy.net
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              How was syncing done in Usenet? It has a very similar decentralized model, and I don’t recall there being problems of data loss due to desyncing between servers.