Library Table of Contents Index Previous Next Comments

Section F: Web cache performance

About Web cache performance  Top

The NetCache appliance is a high-performance system. However, if your environment places an extremely heavy load on an appliance, you can maximize system performance by doing the following:

Improving the hit rate of NetCache  Top

The hit rate reflects the number of user requests that NetCache resolves by serving an object from the cache instead of fetching it from the origin server. The hit rate is a measure of the bandwidth savings that NetCache provides.

You can improve the NetCache hit rate using the following methods in the order of preference:

Configuring for a high hit rate also improves overall system performance because NetCache is fetching fewer objects from the Internet, and is opening and closing fewer connections with origin servers.

The current status of HTTP traffic, hit-rate percentage, cached and uncached HTTP connections, and successful and failed HTTP connection attempts can be monitored on the HTTP - General page under the Data tab.

URL object hit rate versus URL byte hit rate

NetCache keeps statistics of both the percentage of objects and the percentage of bytes delivered from the cache. Because objects vary in size from very small to very large, these two hit-rate percentages typically differ.

If the hit rate seems low

You can view the object hit rate in the Current Status section of the HTTP - General page. To access this page, select Data tab > HTTP > General.

Alternatively, you can use a log-analysis utility to look for URLs that are referenced frequently but not cached (that is, they have a low hit-rate percentage). These objects, if cached, would enable you to increase the hit rate. After you identify some of these objects or types of objects, look at your NetCache configuration to determine why these objects are not cached.

Disabling the logging of FQDNs  Top

The most significant performance improvement to be made with regard to logging is from the disabling of the logging of fully qualified domain names (FQDNs). Disabling this option does not affect which logs NetCache keeps; rather, it causes NetCache to log information by IP address instead of by domain name. DNS lookups are avoided.

Caution
If logging of FQDNs is disabled, access controls using domain names no longer work. If you decide to disable this log entry, check your access control entries and change any entries that use "client-domain" to use "client-ip" instead.

The logging of FQDNs can be disabled by using the Custom Log Format feature on the HTTP - Logging page under the Setup tab.

Adding one or more network interfaces  Top

If the NetCache appliance has remaining CPU power and the current network interface is operating near its capacity, adding network interfaces increases performance.

You can see the system activity on a NetCache appliance by viewing the System Statistics - General page under the Data tab.

Modifying Cookie Cheat File Name Extensions entries  Top

Web servers often use cookies to signify that a URL is user-specific with content that is inherently noncacheable. However, even when some of the content of a URL is user-specific, the URL might contain other objects that are static, such as graphics files, ZIP files, and PDF files. NetCache enables you to define these objects as cacheable (even with a cookie), even when the surrounding content is user-specific and, therefore, noncacheable.

Placing only appropriate entries in the Cookie Cheat File Name Extensions option improves performance and increases hit rate because it enables NetCache to cache static objects that exist inside dynamic URLs. This method is the one most likely to improve your hit rate. If hit rate is important to you, include as many file types in this list as you can, keeping in mind that users might receive some objects that are no longer current.

You can add extensions to the Cookie Cheat File Name Extensions option on the HTTP - Header and Caching Behavior page under the Setup tab. Click the Help icon next to the Cookie Cheat File Name Extensions option to access help and the link to an extensive list of file name extensions. You can copy extensions from the Help file link, paste them into the Cookie Cheat File Name Extensions box, and edit them.

Increasing the object TTL  Top

Increasing the TTL improves performance and increases hit rate because objects remain in the cache longer. However, objects delivered to users can be stale.

Sites interested in saving bandwidth can set object TTLs to several years; sites wanting total consistency can set object TTLs to weeks or hours. The more limited your wide-area bandwidth, the longer you should set your object TTLs.

You can establish or modify the TTL rules that NetCache uses for objects on the HTTP - Header and Caching Behavior page. In the TTL Patterns option, configure each object's TTL by entering TTL pattern rules.

Number of access control and caching rules  Top

Keep only those rules required for your environment

The best general guideline to remember is that the more you configure NetCache to do, the slower the performance. Specifically, if NetCache is configured with many stoplists against which it must verify URL requests, you are trading some performance for access control.

Configure your access control options to ensure that NetCache performs only the checking that is required for your environment.

Avoid having long lists of regular expressions in your access
control lists

Because regular expressions are the slowest rules to process, having long lists of regular expressions in your access control lists and URL control lists can reduce performance.

Use caution when setting rules:

Variable expressions or rules apply a variety of restrictions. However, the type of rule and the number of rules that NetCache must check before servicing each request can affect performance. For example, rules containing the server-ip variable prompt a cached DNS lookup that might be slower than using the server-name variable to specify server names.

Options used to configure ACLs are located on the Access Control Lists page of the Appliance Manager. Rules for controlling access to protocols can also be applied from protocol-specific pages in the Appliance Manager, for example, the HTTP - General page.

For more information about ACLs, see the Security Guide.

Enabling the Complete Fetch option  Top

With the use of the Complete Fetch option, you can specify whether NetCache should continue retrieving a requested object after the user cancels the request.

You might want to enable this option if your bandwidth is inexpensive and you want to maximize cache hits. By completing the retrieval of an object after the user aborts, the cache can serve that object to the next client that requests it without initiating a connection to the origin server.

Enabling the Complete Fetch option is also beneficial when your clients are served by a cache serving a heavy volume of requests, or if your users access the cache over a slow link (such as a SLIP or PPP link).

However, you should not enable the Complete Fetch option if your bandwidth is expensive. When the Complete Fetch option is disabled, you save bandwidth because NetCache stops retrieving objects as soon as the user aborts.

Not completing the retrieval of an object can be undesirable. When a client cancels a request for a large object, NetCache probably has retrieved the majority of the object. If NetCache stops retrieving the object when the client cancels the request, NetCache must retrieve the entire object again if another client requests it.

If your NetCache appliance is busy most of the time or is running over a slow link, make sure that the Complete Fetch option on the HTTP - Header and Caching Behavior page is enabled. The default setting is enabled.

Applying TCP large windows to long-haul networks  Top

Enabling TCP large windows dramatically improves performance over high-bandwidth, long-haul connections by using the capacity of the pipe more effectively. Long-haul networks have a greater capacity than can be used effectively with the standard TCP window size. Increasing the size of the TCP window enables NetCache appliances to communicate with hosts and subnets using the full capacity.

Using large windows on local area networks, however, has no benefit.

Networks that can benefit from enabling large windows include the following:

You can use the TCP Large Windows Enable and the TCP Large Windows List options on the Network - General page to enable and specify the systems or subnets with which NetCache should communicate using large windows, and also to specify the window size that NetCache should use with each.

For details about the TCP Large Windows Enable and TCP Large Windows List options, see the routing chapter in the Administration Guide.

Library Table of Contents Index Previous Next Comments