Calculating HealthChecker Maximum

The following formula can help you compute the maximum time in milliseconds it will take HealthChecker to discover failed or disconnected remote nodes:

Max Time = (ping.idletime) + socketConnectCount * [(ping.interval * ping.probes)
           + (socketConnectTimeout * ping.interval)]

Note the following about the formula:

  • The response time to a socket-connection attempt is less than or equal to (socketConnectTimeout * ping.interval). For calculating the worst-case scenario (absolute maximum time), the equality is used. In most real-world situations the socket-connect response time is likely to be close to 0 and the formula can be simplified to the following:

    Max Time = (ping.idletime) + [socketConnectCount * (ping.interval *
            ping.probes) + ping.interval] 
          
  • ping.idletime, the trigger for the full HealthChecker process, is counted once since it is in effect only once each time the process is triggered.

  • socketConnectCount is a multiplier that is in incremented as long as a positive response is received for each socket connection attempt.

  • The formula yields an ideal value, since slight variations in actual times can occur.

  • To prevent clients from disconnecting too quickly in a situation where an active server is temporarily disconnected from both the backup server and those clients, ensure that the Max Time for L1->L2 is approximately 8-12 seconds longer than for L2->L2. If the values are too close together, then in certain situations the active server may kill the backup and refuse to allow clients to reconnect.