Applies To:

Show Versions Show Versions

Manual Chapter: Accelerating Parallel HTTP Requests
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Overview: HTTP request queuing

You can use the BIG-IP WebAccelerator module to accelerate responses and reduce the number of requests sent to origin web servers, freeing them to perform other tasks, by queuing HTTP requests. HTTP request queuing provides the ability to queue a large number of parallel HTTP requests for the same object, and provide a cached response to those requests, resulting in accelerated responses from the WebAccelerator module and a reduction in requests sent to origin web servers.

The WebAccelerator module manages the queued HTTP requests in accordance with the cache status of the requested object, that is, whether the requested object is uncached, cached and valid, cached and expired, uncacheable, or nonexistent.

Object cache status Description
Initial requests for an uncached object When the WebAccelerator module receives a large number of parallel requests for an object that is not yet cached, it queues the requests, and then sends one of the requests to an origin web server. When the WebAccelerator module receives the first response, it determines whether the response is cacheable while sending the response to the client. If the response is cacheable, the WebAccelerator module sends a second request to the origin web server, caches the response with the object, and uses that cached response to service the queued requests.
Requests for a cached object When the WebAccelerator module receives a large number of parallel requests for a valid cached object, it services the requests with the cached response.
Requests for an expired cached object If a cached object is expired, instead of sending all requests to the origin web server, the WebAccelerator module queues the requests, and then sends one request to an origin web server for fresh content. When the WebAccelerator module receives the fresh response, it caches the response with the fresh content, and uses the cached response to service the queued requests.
Requests for an invalidated cached object If a cached object requires validation, the WebAccelerator module can queue the requests, and then send one request to an origin web server for fresh content. When the response is received, the WebAccelerator module caches the response with the fresh content, and uses the cached response to service the queued requests.
Requests for an uncacheable object Sometimes, an object cannot be cached, for example, if the object exceeds the maximum object size or if the response includes a no-store response header. When the WebAccelerator module first receives a large number of parallel requests for an object that cannot be cached, instead of sending each request to an origin web server, the WebAccelerator module queues the requests, and then sends one request to an origin web server. When the WebAccelerator module receives the response, it sends the queued requests to the origin web server. Subsequent requests for the uncacheable object bypass the WebAccelerator module and are sent directly to the origin web server.
Requests for a nonexistent object When the WebAccelerator module receives a large number of parallel requests for an object that does not exist or no longer exists, the WebAccelerator module can queue the requests, and then send one request to an origin web server. When the WebAccelerator module receives the response with a 404 (Not Found) status code, it services the queued requests with the 404 (Not Found) response. Note that the 404 (Not Found) response is not cached, and all subsequent requests for the nonexistent object are sent to the origin web server.
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Was this resource helpful in solving your issue?




NOTE: Please do not provide personal information.



Incorrect answer. Please try again: Please enter the words to the right: Please enter the numbers you hear:

Additional Comments (optional)