mysqlnd-ms-php-loadbalancing-1

  • Concepts
  • Load balancing

  • Load balancing
  • Load balancing

    Load balancing

    Four load balancing strategies are supported to
    distribute statements over the configured MySQL slave servers:

    random

    Chooses a random server whenever a statement is
    executed.

    random once (default)

    Chooses a random server after the first statement
    is executed, and uses the decision for the rest of the PHP
    request.

    It is the default, and the lowest impact on the
    connection state.

    round robin

    Iterates over the list of configured servers.

    user-defined via callback

    Is used to implement any other strategy.

    The load balancing policy is configured in the
    plugins configuration file using the random, roundrobin, and user filters.

    Servers can be prioritized assigning a weight. A
    server that has been given a weight of two will get twice as many
    requests as a server that has been given the default weight of one.
    Prioritization can be handy in heterogenous environments. For
    example, you may want to assign more requests to a powerful machine
    than to a less powerful. Or, you may have configured servers that
    are close or far from the client, thus expose different
    latencies.