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.

  • Lucien@beehaw.orgOP
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    Maybe I should clarify with “each user successfully spun up…” I’m mostly curious if the 5000 microservers trying to federate is a more sustainable access pattern than 5000 users hitting the website.

    Since federation is an async process, it can be optimized on both ends in a way that user browser requests cannot.

    At the same time, federation would overall result in more bandwidth being used because not every user wants to view every post in the frontend.

    • rysiek@szmer.info
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 year ago

      Maybe I should clarify with “each user successfully spun up…” I’m mostly curious if the 5000 microservers trying to federate is a more sustainable access pattern than 5000 users hitting the website.

      Sustainable in what sense?

      It’s way more sustainable in the sense of “one website is not controlling the entirety of the experience of a given type of service for 5000 users”, for example. I think it’s important to talk about specific kinds of sustainability, and specific threats to it.

      Things to consider (apart from bandwidth-related considerations):

      • technical knowledge necessary to safely and securely run and maintain a service
      • space, time, and resources (including financial) to do so
      • ability, willingness, and energy to moderate a service (this is where Big Tech platforms are falling flat on their faces, for example, and where smaller fedi communities work pretty damn well)
      • Lucien@beehaw.orgOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Those are definitely things to consider - I’m mostly thinking about technical constraints in scaling fediverse services out to meet large increases in demand.

    • NightAuthor@beehaw.org
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      But instance federation is an async process that is happening constantly. A user on your instance may be a realtime load, its only sporatic (on a per user basis). Basically, me spinning up an instance is a constant burden on the network, but me browsing is just a temporary load on a single server.

      My understandings is that the best situation is a good number of powerful machines with instances with users evenly distributed amongst them.

    • NightAuthor@beehaw.org
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      But instance federation is an async process that is happening constantly. A user on your instance may be a realtime load, its only sporatic (on a per user basis). Basically, me spinning up an instance is a constant burden on the network, but me browsing is just a temporary load on a single server.

      My understandings is that the best situation is a good number of powerful machines with instances with users evenly distributed amongst them.