It sounds way less offensive to those who decry the original terminology’s problematic roots but still keeps its meaning intact.

  • theneverfox@pawb.social
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    1
    ·
    3 months ago

    Primary/secondary means they’re all doing their thing, but one is preferred. There’s no instruction going on between them

    If you have a primary and secondary web servers, you’ll use the primary first, but the secondary or secondaries are a fallback

    If you have a primary and secondary drive, you have two drives, one of which is more important (probably because you booted from it). The secondary could be a copy or just another drive, either way the OS or a raid controller is managing it, one drive doesn’t manage another

    Similarly, we have dispatch/worker- the difference between that and master/slave is that they’re different things. A master should be able to work without a slave, and a slave should be capable of being promoted to master - a dispatcher can’t do the work and the worker can’t take over if the dispatch goes down

    The funny thing is we don’t use master/slave much anymore, the whole premise is that the slave doesn’t start to do what it does when it starts up. I can’t think of any examples of it in the past decade - other paradigms, with a different relationship and a different name, have replaced it

    • Lifter@discuss.tchncs.de
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      Redis, rabbitmq. There are infrastructure where all nodes work but only one node is responsible for properly and timely synchronizing changes, which is a hard problem to solve in a distributed fashion.

      • theneverfox@pawb.social
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 months ago

        That doesn’t really match the master/slave relationship. The distributed instances aren’t slaved to the master. They’re each doing their own thing, but as part of that they have a hierarchical relationship when it comes to synchronization

        Distributed computing gets more into the concept of swarms. Each piece is autonomous, and the swarm self-organizes. We made up a bunch of paradigms around this that were basically obsolete by the time we needed them - I think the relationship here is leader/follower, but I’ve never heard that terminology outside the classroom

        They’re sharded. It’s like host/mirror, except each mirror is an equally correct part of the real picture

        One of them is the leader, but it doesn’t control the rest of them. It just coordinates them

        When you get into swarm concepts, like sharding or activitypub, it doesn’t make sense to describe the relationship between nodes anymore. The relationship between any two nodes is “part of the same swarm”. You describe the nature of the swarm as a whole, or the behavior of individual nodes

    • realitista@lemm.ee
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      3 months ago

      This is true. Warm standby is more or less obsolete in favor of n+1 load sharing.

      I think for most cases you could use primary and standby for master slave replacements.