Topic
This article applies to BIG-IP 11.x. For information about other versions, refer to the following articles:
- SOL13244: Overview of the RAM Cache feature (10.x)
- SOL13245: Overview of the RAM Cache feature (9.x)
HTTP caching allows a cache-aware system to store frequently-requested web objects in memory for reuse by subsequent connections. This operation is designed to save bandwidth and reduce the amount of traffic load on the origin web servers. The Web Acceleration profile provides settings to configure caching for the BIG-IP system. Associating a Web Acceleration profile with a virtual server allows the BIG-IP system to store HTTP objects in memory and reuse these objects for subsequent connections.
Description
The BIG-IP system includes the HTTP caching feature. An HTTP cache is a collection of HTTP objects stored in the BIG-IP systems memory that subsequent connections can reuse to reduce traffic load on the origin web servers. The goal of caching is to reduce the need to send frequent requests for the same object, and eliminate the need to send full responses in many cases. You can enable HTTP caching on the BIG-IP system by associating a Web Acceleration profile with a virtual server.
Cacheable content
The BIG-IP cache feature complies with the cache specifications described in RFC 2616. You can configure the BIG-IP system to cache the following content types:
- 200, 203, 206, 300, 301, and 410 HTTP responses
- Responses to HTTP GET requests
- Other HTTP methods for Uniform Resource Identifiers (URIs) specified for inclusion in cached content, or specified in an iRule
- Content based on the User-Agent and Accept-Encoding values. The cache feature holds different content for Vary headers.
The default cache configuration caches only responses to HTTP GET requests. However, you can configure the Web Acceleration profile to cache other requests, including non-HTTP requests. To do this, you can specify a URI in the URI Include or Pin List within an HTTP profile, or write an iRule.
Non-cacheable content
The cache feature does not cache the following items:
- Private data specified by cache control headers
- Action-oriented HTTP methods such as HEAD, PUT, DELETE, TRACE, and CONNECT
Settings and definitions in the Web Acceleration profile
The following table contains the settings and definitions for the Web Acceleration profile:
Setting | Value | Description |
Cache Size | 100 MB | Specifies the amount of memory the system provides for caching per TMM. The total cache size equals the Cache Size multiplied by the number of TMMs on the system. |
Maximum Entries | 10000 | Specifies the maximum number of entries the system allows for caching. |
Maximum Age | 3600 seconds | Specifies the duration in which the system considers the cached content valid. |
Minimum Object Size | 500 bytes | Specifies the minimum object size, in bytes, that the system stores in the cache. |
Maximum Object Size | 50000 bytes | Specifies the maximum object size, in bytes, that the system stores in the cache. |
URI Caching | URI List... | Specifies the Uniform Resource Identifiers (URIs) that the system retains or excludes in the cache. The pinning process forces the system either to retain URIs in the cache indefinitely, cache URIs that typically are ineligible for caching, or to not cache URIs that typically are eligible for caching. |
URI List | Pin List - Lists the URIs for responses that you want the system to store indefinitely in the RAM cache. Include List - Lists the URIs that are normally ineligible for caching, but the system caches them. When you add URIs to the Include List, the system caches the GET methods and other methods, including non-HTTP methods. Exclude List - Lists the URIs that are typically eligible for caching, but the system does not cache them. Include Override List - Configures a list of URIs that should be cached, even though they would normally not be cached due to constraints defined by the Maximum Object Size setting or other settings. The default value is None. URIs in the Include Override List are cacheable even if they are not in the Include list. | The URI list specifies the URIs that you want to cache or exclude from the cache. |
Ignore Headers | All - The system disregards all Cache-Control headers in request headers. Cache-Control:max-age - The system disregards any Cache-Control:max-age request header that has a value of max-age=0. None - The system processes all Cache-Control headers in request headers. | Specifies how the system processes Cache-Control headers. |
Insert Age Header | Enabled | Specifies whether the system inserts Date and Age headers in the cached entry; the Date header contains the current date and time on the system, while the Age header contains the length of time the content has been in the cache. |
Aging Rate | 9 | Specifies how quickly the system ages a cache entry. The aging rate ranges from 0 (slowest aging) to 10 (fastest aging). |
Recommendations
When you configure the Web Acceleration profile for a virtual server, you should consider the following factors:
- Caching is useful for frequently-requested content; for example, caching can be used if the site has periods of high demand for specific content. When you configure a Web Acceleration profile for a virtual server, the content server only has to serve the content to the BIG-IP system once per expiration period.
- Caching is useful if a site contains a large amount of static content such as CSS files, JavaScript files, or images.
- For compressible data, the cache feature can store data for clients that accept compressed data. When used with the compression feature on the BIG-IP system, the cache takes stress off of the BIG-IP system and the content servers.
- Tham Khảo: https://support.f5.com
No comments:
Post a Comment