Load Balancers run server health checks against web servers to determine if they are alive, healthy and providing service. Server health monitoring is the key to delivering resilient applications, and depending on the solution chosen, some load balancers are able to use layer7 health checks which offer greater sophistication in their problem detection. Below is a summary of the different methods of server health checks.
Ping: This is the most simple method of server health check, however it is not very reliable because the load balancer can report that the server is up, whilst the web service can still be down.
TCP Connect: This is a more sophisticated health check method which can check if a service is up and running. An example of this is services on port 80 for web.
Simple HTTP GET: This method of server health check will make a HTTP GET request to the web server and typically check for a header response such as a 200 OK.
Full HTTP GET: This server health check will make a HTTP GET and check the actual content body for a correct response. This feature is only available on some of the more advanced load balancing solutions but is the superior method for web applications because it will check that the actual application is available.
Customisable Server Health Checks: Some load balancing solutions are able to accommodate custom monitors for TCP / IP applications for better control over their specific application services.