Chapter 8. Caching

Caching is a technique frequently used to speed up slow operations by storing copies of the resulting data to be used for later operations. In the context of web servers, caching is often combined with proxying, but it can also be used to accelerate accesses to local resources, especially generated documents.

Apache offers two forms of caching: a simple, file-oriented form, and a sophisticated, HTTP-aware form.

Simple, File-Oriented Caching

The mod_file_cache module provides a basic caching mechanism that is suited to caching a small set of local, static files that are frequently requested. Two techniques are used: the files can either be opened at server startup and kept open, or they can be mapped into the server’s memory space. A cached file is only used if the filename exactly matches a filename from the URL mapping phase.

Both caching techniques use limited system resources and are only suitable for a small number of files. Neither technique will detect whether a file changes on disk; if cached files are updated, then the server should be restarted.

CacheFile

S*

mod_file_cache (E)

CacheFile filename ...

The specified files are opened at server startup, and the open file handles are cached.

MMapFile

S*

mod_file_cache (X)

MMapFile filename ...

The specified files are mapped into memory at startup.

Intelligent Caching

The mod_cache module implements a sophisticated caching mechanism, that can cache local documents as well as documents that are retrieved from remote servers. ...

Get Apache 2 Pocket Reference now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.