6.3.3. Connector Load Balancers

The load balancing model used, according to the selected QoS is defined by a number of different load balancing classes. These are configured automatically when different QoS is selected, be explicitly changed by altering the configuration file. The supported load balancers are detailed in the table below:

Load Balancer Default QoS Description
DefaultLoadBalancer RW_STRICT Always selects the master data source
MostAdvancedSlaveLoadBalancer RO_RELAXED Selects the slave that has replicated the more events, by comparing data sources "high water" marks. If no slave is available, the master will be returned.
LowestLatencySlaveLoadBalancer   Selects the slave data source that has the lowest replication lag, or appliedLatency in ls -l within cctrl output. If no slave data source is eligible, the master data source will be selected.
RoundRobinSlaveLoadBalancer   Selects a slave in a round robin manner, by iterating through them using internal index. Returns the master if no slave is found online
HighWaterSlaveLoadBalancer RW_SESSION Given a session high water (usually the high water mark of the update event), selects the first slave that has higher or equal high water, or the master if no slave is online or has replicated the given session event. This is the default used when SmartScale is enabled.