What would happen if instead of users swarming existing servers when a fediverse service was put in the spotlight, each user spun up their own micro-instance and tried to federate with existing servers?

There’s always the odd person who decides to host a personal fediverse service in their homelab for themselves, but would the fediverse work if that was actually the primary mode of interaction? Or would it fail in a similar way to now where the servers which receive the most federation requests need to scale up?

Presumably the failure modes for federation are easier to scale than browser requests since it’s an async process.

  • towerful@beehaw.org
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 years ago

    I think there is a tipping point somewhere.

    I think the connection calc is n * (n - 1) / 2 (at least, that’s what it is for mesh networks) so 1000 servers would be handling ~500k connections each.
    That would be for 1000 users.
    Those connections might be more lightweight, but there are significantly more of them (might even run into OS issues with that many open connections)

    If each server was handling 50 users, the mesh connections would then be 1.2k.
    50 users should be a blip wrt server load, and 1.2k mesh connections is more manageable.

    • Lucien@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 years ago

      At the same time, those graph connections don’t need to be persistent network connections. You could easily cycle through connected nodes and batch update events without issue, and in that case, the primary constraint is bandwidth to the connected graph, not network connections.