Cacheability Engine

Remember, however, that it can't tell you everything about how cacheable your page is; it can only help you make an informed decision about your site.

For more information about cacheability, see the Tutorial.

The Cacheability Engine is free to use; see the bottom of this page for more information.

how do I use it?

The Engine can be accessed in a few ways;

1. as a public web Engine

The following sites host public copies:

If you'd like to make your own public page available, please contact me.

2. as an extension to your Web browser

By installing a browser extension, you can check any page's cacheability as you're surfing, with a single click. See the public Engine pages for more details.

3. by installing it locally

If you'll be using the Engine often, you can download it and install it on a computer of your choice. Once it's there, you can use it as a CGI script or a command-line utility. See the README file included for details.

how do I interpret the results?

The output of the Engine takes the form of a cascading list of objects. In the Web interface, the color of the list dot indicates how cachable the object is; a red dot is very uncacheable, a yellow one somewhat cacheable, and a green dot is quite cacheable. You can click on the object's URL to open a window to look at it.

Under the URL is a list of different HTTP headers and their values. For information about what each does, read the Tutorial.

If the object has a Last-Modified header, information about whether it supports validation will be written on that line. If the object has a validator, but returns a full response to a conditional request with the same object as before, the script will write "Validation not Supported".

Finally, each object will have a paragraph of commentary associated, which will point out the various ways which it will interact with a cache. For more information about the concepts involved, see the Tutorial.

In the Web interface, the object list will be followed by a list of links that were referenced by the URL. You can check the cacheability of each of these by following the links there.

Date headers and clock skew

In the course of using the Engine, you may get messages (either at the top of the Web interface, or in the commentary) about Date headers and clock skew. Breifly, if the clock of a Web server is inaccurate, it can cause problems with Caching, which is very date-dependant. If you get this message, you should synchronise the clock on the Web server; ask your System Administrator, or see www.ntp.org for more information.

If you see a message that the Web server didn't generate Date headers when it should have, you have a buggy Web server, and should upgrade.

limitations

While the Engine does its best to show you everything that may affect an object's cacheability, there are some things it can't do.

In general, the Engine is only a tool that gives you an indication of cacheability. You'll get the best results from it when you understand the implications of caching your content and develop a plan to determine how cacheable it should be.

details

contact

To ask questions, report bugs or make comments, please use this form.

technical

The Cacheability Engine is written in Python, a high-level, object oriented scripting language. Python runs on almost any platform, and is available freely at the link above.

legal

The Cacheability Engine, both as a service and a program, is provided 'as is', without warranty of any kind. Although it is believed that it functions as intended, it should only be thought of as an instrument that gives an indication of how caches may interact with a particular Web site.

Although the Engine may be copied and distributed freely, it may not be modified in any way (including the URL references that it contains). This is to protect the end users; much care has been taken to assure that it returns the best possible results. This restriction applies to both public Engines and redistribution of the software.

If you would like to produce a derivative work (whether free or commercial), please contact the author to discuss the project.