Can the Load Balancer provide fault tolerance if a back-end server fails whilst delivering a web page?No. There is no completely reliable way for the balancer to tell the difference between a full response from a web server and a partial, incomplete response, so the balancer will not attempt to deliver the remainder of a web page from a different machine. If the balancer discovers that a web server is not working when it initially sends a page request to a back-end, then it can normally re-send the request to another machine. The only exception is for requests that contain a content-body. These are not re-sent, because the balancer would have to buffer all of the (potentially unlimited amount of) client data in order to re-send the request. Does this mean that my web application might get requeststwice from the balancer?It's possible, if one of your back-end machines fails or is too slow in responding to a request. As explained in the previous answer, only certain requests are repeated. Generally speaking, this means that the balancer will try to re-send GET and HEAD requests, but not POSTs. This follows with the HTTP specification's declaration that GET requests should be idempotent (i.e. that there will be no side effects of these type of requests), so they can safely be re-sent. |
Recently...
Other Resources
|





