summaryrefslogtreecommitdiff
path: root/docs/manual/mod/mod_cache_disk.xml
diff options
context:
space:
mode:
authorGraham Leggett <minfrin@apache.org>2010-11-20 15:48:51 +0000
committerGraham Leggett <minfrin@apache.org>2010-11-20 15:48:51 +0000
commit2f74bae2d51d6362168b267249583a67ae1cb60a (patch)
tree871900eeef45483c951787b8e1f5c4ec0efc0bcf /docs/manual/mod/mod_cache_disk.xml
parente0f84b1a244b9313ae9638f796d83ce9a98be02d (diff)
downloadhttpd-2f74bae2d51d6362168b267249583a67ae1cb60a.tar.gz
Rename mod_disk_cache to mod_cache_disk within the documentation.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1037244 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/mod/mod_cache_disk.xml')
-rw-r--r--docs/manual/mod/mod_cache_disk.xml260
1 files changed, 260 insertions, 0 deletions
diff --git a/docs/manual/mod/mod_cache_disk.xml b/docs/manual/mod/mod_cache_disk.xml
new file mode 100644
index 0000000000..03335a549a
--- /dev/null
+++ b/docs/manual/mod/mod_cache_disk.xml
@@ -0,0 +1,260 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision$ -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_cache_disk.xml.meta">
+
+<name>mod_cache_disk</name>
+<description>Disk based storage module for the HTTP caching filter.</description>
+<status>Extension</status>
+<sourcefile>mod_cache_disk.c</sourcefile>
+<identifier>cache_disk_module</identifier>
+
+<summary>
+ <p><module>mod_cache_disk</module> implements a disk based storage
+ manager for <module>mod_cache</module>.</p>
+
+ <p>The headers and bodies of cached responses are stored separately on
+ disk, in a directory structure derived from the md5 hash of the cached
+ URL.</p>
+
+ <p>Multiple content negotiated responses can be stored concurrently,
+ however the caching of partial content is not yet supported by this
+ module.</p>
+
+ <p>Atomic cache updates to both header and body files are achieved
+ without the need for locking by storing the device and inode numbers of
+ the body file within the header file. This has the side effect that
+ cache entries manually moved into the cache will be ignored.</p>
+
+ <p>The <program>htcacheclean</program> tool is provided to list cached
+ URLs, remove cached URLs, or to maintain the size of the disk cache
+ within size and/or inode limits. The tool can be run on demand, or
+ can be daemonized to offer continuous monitoring of directory sizes.</p>
+
+ <note><title>Note:</title>
+ <p><module>mod_cache_disk</module> requires the services of
+ <module>mod_cache</module>, which must be
+ loaded before mod_cache_disk.</p>
+ </note>
+ <note><title>Note:</title>
+ <p><module>mod_cache_disk</module> uses the sendfile feature to
+ serve files from the cache when supported by the platform, and
+ when enabled with <directive module="core">EnableSendfile</directive>.
+ However, per-directory and .htaccess configuration of
+ <directive module="core">EnableSendfile</directive> are ignored by
+ <module>mod_cache_disk</module> as the corresponding settings are not
+ available to the module when a request is being served from the
+ cache.</p>
+ </note>
+</summary>
+
+<directivesynopsis>
+<name>CacheRoot</name>
+<description>The directory root under which cache files are
+stored</description>
+<syntax>CacheRoot <var>directory</var></syntax>
+<contextlist><context>server config</context><context>virtual host</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheRoot</directive> directive defines the name of
+ the directory on the disk to contain cache files. If the <module
+ >mod_cache_disk</module> module has been loaded or compiled in to the
+ Apache server, this directive <em>must</em> be defined. Failing to
+ provide a value for <directive>CacheRoot</directive> will result in
+ a configuration file processing error. The <directive
+ module="mod_cache_disk">CacheDirLevels</directive> and <directive
+ module="mod_cache_disk">CacheDirLength</directive> directives define
+ the structure of the directories under the specified root directory.</p>
+
+ <example>
+ CacheRoot c:/cacheroot
+ </example>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheDirLevels</name>
+<description>The number of levels of subdirectories in the
+cache.</description>
+<syntax>CacheDirLevels <var>levels</var></syntax>
+<default>CacheDirLevels 2</default>
+<contextlist><context>server config</context><context>virtual host</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheDirLevels</directive> directive sets the number
+ of subdirectory levels in the cache. Cached data will be saved this
+ many directory levels below the <directive module="mod_cache_disk"
+ >CacheRoot</directive> directory.</p>
+ <p>A high value for <directive>CacheDirLevels</directive> combined
+ with a low value for <directive>CacheDirLength</directive> will result in
+ a relatively deep hierarchy, with a small number of subdirectories at each
+ level.</p>
+
+ <note>
+ <p>The result of <directive>CacheDirLevels</directive>*
+ <directive module="mod_cache_disk">CacheDirLength</directive> must
+ not be higher than 20.</p>
+ </note>
+
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheDirLength</name>
+<description>The number of characters in subdirectory names</description>
+<syntax>CacheDirLength <var>length</var></syntax>
+<default>CacheDirLength 2</default>
+<contextlist><context>server config</context><context>virtual host</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheDirLength</directive> directive sets the number
+ of characters for each subdirectory name in the cache hierarchy. It can
+ be used in conjunction with <directive>CacheDirLevels</directive> to
+ determine the approximate structure of your cache hierarchy.</p>
+ <p>A high value for <directive>CacheDirLength</directive> combined
+ with a low value for <directive>CacheDirLevels</directive> will result in
+ a relatively flat hierarchy, with a large number of subdirectories at each
+ level.</p>
+
+ <note>
+ <p>The result of <directive module="mod_cache_disk"
+ >CacheDirLevels</directive>* <directive>CacheDirLength</directive>
+ must not be higher than 20.</p>
+ </note>
+
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheMinFileSize</name>
+<description>The minimum size (in bytes) of a document to be placed in the
+cache</description>
+<syntax>CacheMinFileSize <var>bytes</var></syntax>
+<default>CacheMinFileSize 1</default>
+<contextlist><context>server config</context>
+ <context>virtual host</context>
+ <context>directory</context>
+ <context>.htaccess</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheMinFileSize</directive> directive sets the
+ minimum size, in bytes, for a document to be considered for storage
+ in the cache.</p>
+
+ <example>
+ CacheMinFileSize 64
+ </example>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheMaxFileSize</name>
+<description>The maximum size (in bytes) of a document to be placed in the
+cache</description>
+<syntax>CacheMaxFileSize <var>bytes</var></syntax>
+<default>CacheMaxFileSize 1000000</default>
+<contextlist><context>server config</context>
+ <context>virtual host</context>
+ <context>directory</context>
+ <context>.htaccess</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheMaxFileSize</directive> directive sets the
+ maximum size, in bytes, for a document to be considered for storage in
+ the cache.</p>
+
+ <example>
+ CacheMaxFileSize 64000
+ </example>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheReadSize</name>
+<description>The minimum size (in bytes) of the document to read and be cached
+ before sending the data downstream</description>
+<syntax>CacheReadSize <var>bytes</var></syntax>
+<default>CacheReadSize 0</default>
+<contextlist><context>server config</context>
+ <context>virtual host</context>
+ <context>directory</context>
+ <context>.htaccess</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheReadSize</directive> directive sets the
+ minimum amount of data, in bytes, to be read from the backend before the
+ data is sent to the client. The default of zero causes all data read of
+ any size to be passed downstream to the client immediately as it arrives.
+ Setting this to a higher value causes the disk cache to buffer at least
+ this amount before sending the result to the client. This can improve
+ performance when caching content from a reverse proxy.</p>
+
+ <p>This directive only takes effect when the data is being saved to the
+ cache, as opposed to data being served from the cache.</p>
+
+ <example>
+ CacheReadSize 102400
+ </example>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheReadTime</name>
+<description>The minimum time (in milliseconds) that should elapse while reading
+ before data is sent downstream</description>
+<syntax>CacheReadTime <var>milliseconds</var></syntax>
+<default>CacheReadTime 0</default>
+<contextlist><context>server config</context>
+ <context>virtual host</context>
+ <context>directory</context>
+ <context>.htaccess</context>
+</contextlist>
+
+<usage>
+ <p>The <directive>CacheReadTime</directive> directive sets the minimum amount
+ of elapsed time that should pass before making an attempt to send data
+ downstream to the client. During the time period, data will be buffered
+ before sending the result to the client. This can improve performance when
+ caching content from a reverse proxy.</p>
+
+ <p>The default of zero disables this option.</p>
+
+ <p>This directive only takes effect when the data is being saved to the
+ cache, as opposed to data being served from the cache. It is recommended
+ that this option be used alongside the
+ <directive module="mod_cache_disk">CacheReadSize</directive> directive to
+ ensure that the server does not buffer excessively should data arrive faster
+ than expected.</p>
+
+ <example>
+ CacheReadTime 1000
+ </example>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>