]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Create initial documentation for mod_socache_shmcb, mod_socache_dc,
authorGraham Leggett <minfrin@apache.org>
Tue, 6 Dec 2011 14:53:23 +0000 (14:53 +0000)
committerGraham Leggett <minfrin@apache.org>
Tue, 6 Dec 2011 14:53:23 +0000 (14:53 +0000)
mod_socache_dbm and mod_socache_memcache.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1210951 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/mod/allmodules.xml
docs/manual/mod/mod_socache_dbm.xml [new file with mode: 0644]
docs/manual/mod/mod_socache_dc.xml [new file with mode: 0644]
docs/manual/mod/mod_socache_memcache.xml [new file with mode: 0644]
docs/manual/mod/mod_socache_shmcb.xml [new file with mode: 0644]
docs/manual/mod/mod_ssl.xml
docs/manual/socache.xml

index f519531048488d3825931434fe71c176365dda89..2e0706ca8049deab1da7c46e0eab1439accf7ccc 100644 (file)
   <modulefile>mod_slotmem_plain.xml</modulefile>
   <modulefile>mod_slotmem_shm.xml</modulefile>
   <modulefile>mod_so.xml</modulefile>
+  <modulefile>mod_socache_dbm.xml</modulefile>
+  <modulefile>mod_socache_dc.xml</modulefile>
+  <modulefile>mod_socache_memcache.xml</modulefile>
+  <modulefile>mod_socache_shmcb.xml</modulefile>
   <modulefile>mod_speling.xml</modulefile>
   <modulefile>mod_ssl.xml</modulefile>
   <modulefile>mod_status.xml</modulefile>
diff --git a/docs/manual/mod/mod_socache_dbm.xml b/docs/manual/mod/mod_socache_dbm.xml
new file mode 100644 (file)
index 0000000..874327e
--- /dev/null
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 1210261 $ -->
+
+<!--
+ 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_socache_dbm.xml.meta">
+
+<name>mod_socache_dbm</name>
+<description>DBM based shared object cache provider.</description>
+<status>Extension</status>
+<sourcefile>mod_socache_dbm.c</sourcefile>
+<identifier>mod_socache_dbm_module</identifier>
+
+<summary>
+    <p><code>mod_socache_dbm</code> is a shared object cache provider
+    which provides for creation and access to a cache backed by a
+    DBM database.
+    </p>
+    
+    <example>
+    dbm:/path/to/datafile
+    </example>
+
+    <p>Details of other shared object cache providers can be found
+    <a href="../socache.html">here</a>.
+    </p>
+
+</summary>
+
+</modulesynopsis>
diff --git a/docs/manual/mod/mod_socache_dc.xml b/docs/manual/mod/mod_socache_dc.xml
new file mode 100644 (file)
index 0000000..2cd0cb6
--- /dev/null
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 1210261 $ -->
+
+<!--
+ 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_socache_dc.xml.meta">
+
+<name>mod_socache_dc</name>
+<description>Distcache based shared object cache provider.</description>
+<status>Extension</status>
+<sourcefile>mod_socache_dc.c</sourcefile>
+<identifier>mod_socache_dc_module</identifier>
+
+<summary>
+    <p><code>mod_socache_dc</code> is a shared object cache provider
+    which provides for creation and access to a cache backed by the
+    <a href="http://www.distcache.org/">distcache</a>
+    distributed session caching libraries.
+    </p>
+
+    <p>Details of other shared object cache providers can be found
+    <a href="../socache.html">here</a>.
+    </p>
+
+</summary>
+
+</modulesynopsis>
diff --git a/docs/manual/mod/mod_socache_memcache.xml b/docs/manual/mod/mod_socache_memcache.xml
new file mode 100644 (file)
index 0000000..0ef91c6
--- /dev/null
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 1210261 $ -->
+
+<!--
+ 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_socache_memcache.xml.meta">
+
+<name>mod_socache_memcache</name>
+<description>Memcache based shared object cache provider.</description>
+<status>Extension</status>
+<sourcefile>mod_socache_memcache.c</sourcefile>
+<identifier>mod_socache_memcache_module</identifier>
+
+<summary>
+    <p><code>mod_socache_memcache</code> is a shared object cache provider
+    which provides for creation and access to a cache backed by the
+    <a href="http://memcached.org/">memcached</a>
+    high-performance, distributed memory object caching system.
+    </p>
+
+    <p>Details of other shared object cache providers can be found
+    <a href="../socache.html">here</a>.
+    </p>
+
+</summary>
+
+</modulesynopsis>
diff --git a/docs/manual/mod/mod_socache_shmcb.xml b/docs/manual/mod/mod_socache_shmcb.xml
new file mode 100644 (file)
index 0000000..85d5919
--- /dev/null
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 1210261 $ -->
+
+<!--
+ 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_socache_shmcb.xml.meta">
+
+<name>mod_socache_shmcb</name>
+<description>shmcb based shared object cache provider.</description>
+<status>Extension</status>
+<sourcefile>mod_socache_shmcb.c</sourcefile>
+<identifier>mod_socache_shmcb_module</identifier>
+
+<summary>
+    <p><code>mod_socache_shmcb</code> is a shared object cache provider
+    which provides for creation and access to a cache backed by a
+    high-performance cyclic buffer inside a shared memory segment.
+    </p>
+    
+    <example>
+    shmcb:/path/to/datafile(512000)
+    </example>
+
+    <p>Details of other shared object cache providers can be found
+    <a href="../socache.html">here</a>.
+    </p>
+
+</summary>
+
+</modulesynopsis>
index 041446961ea7df0d1183923db4dc2343bcb03478..557f6e5d7c8b8b424a771a1473a8b11fc242a386 100644 (file)
@@ -453,7 +453,7 @@ The following five storage <em>type</em>s are currently supported:</p>
     processes.  This session cache may suffer reliability issues under
     high load.</p></li>
 
-<li><code>shm:/path/to/datafile</code>[<code>(</code><em>size</em><code>)</code>]
+<li><code>shmcb:/path/to/datafile</code>[<code>(</code><em>size</em><code>)</code>]
 
     <p>This makes use of a high-performance cyclic buffer
     (approx. <em>size</em> bytes in size) inside a shared memory
@@ -476,7 +476,7 @@ The following five storage <em>type</em>s are currently supported:</p>
 
 <example><title>Examples</title>
 SSLSessionCache dbm:/usr/local/apache/logs/ssl_gcache_data<br />
-SSLSessionCache shm:/usr/local/apache/logs/ssl_gcache_data(512000)
+SSLSessionCache shmcb:/usr/local/apache/logs/ssl_gcache_data(512000)
 </example>
 
 <p>The <code>ssl-cache</code> mutex is used to serialize access to
index 8a7b7d1c0ffe90211677a4794c49e8cbb0979e66..20cae8e65f984ffa2ff3c5fb7260e699f63c1dd7 100644 (file)
     <directive module="ssl">SSLStaplingCache</directive>.</p>
     <p>Currently available providers are:</p>
     <dl>
-    <dt>"dbm" (mod_socache_dbm)</dt>
+    <dt>"dbm" (<module>mod_socache_dbm</module>)</dt>
     <dd>This makes use of a DBM hash file.
      The choice of underlying DBM used may be configurable
      if the installed APR version supports multiple DBM implementations.</dd>
-    <dt>"dc" (mod_socache_dc)</dt>
+    <dt>"dc" (<module>mod_socache_dc</module>)</dt>
     <dd>This makes use of the <a href="http://www.distcache.org/">distcache</a>
     distributed session caching libraries.</dd>
-    <dt>"memcache" (mod_socache_memcache)</dt>
+    <dt>"memcache" (<module>mod_socache_memcache</module>)</dt>
     <dd>This makes use of the <a href="http://memcached.org/">memcached</a>
     high-performance, distributed memory object caching system.</dd>
-    <dt>"shmcb" (mod_socache_shmcb)</dt>
+    <dt>"shmcb" (<module>mod_socache_shmcb</module>)</dt>
     <dd>This makes use of a high-performance cyclic buffer inside a
      shared memory segment.</dd>
     </dl>
+
+    <p>The API provides the following functions:</p>
+
+    <dl>
+      <dt>const char *create(ap_socache_instance_t **instance, const char *arg,
+                          apr_pool_t *tmp, apr_pool_t *p);</dt>
+      <dd>Create a session cache based on the given configuration string.
+      The instance pointer returned in the instance paramater will be
+      passed as the first argument to subsequent invocations.</dd>
+
+      <dt>apr_status_t init(ap_socache_instance_t *instance, const char *cname,
+                         const struct ap_socache_hints *hints,
+                         server_rec *s, apr_pool_t *pool)</dt>
+      <dd>Initialize the cache.  The cname must be of maximum length 16
+      characters, and uniquely identifies the consumer of the cache
+      within the server; using the module name is recommended, e.g.
+      "mod_ssl-sess".  This string may be used within a filesystem
+      path so use of only alphanumeric [a-z0-9_-] characters is
+      recommended.  If hints is non-NULL, it gives a set of hints for
+      the provider.  Return APR error code.</dd>
+
+      <dt>void destroy(ap_socache_instance_t *instance, server_rec *s)</dt>
+      <dd>Destroy a given cache instance object.</dd>
+
+      <dt>apr_status_t store(ap_socache_instance_t *instance, server_rec *s,
+                          const unsigned char *id, unsigned int idlen,
+                          apr_time_t expiry,
+                          unsigned char *data, unsigned int datalen,
+                          apr_pool_t *pool)</dt>
+      <dd>Store an object in a cache instance.</dd>
+
+      <dt>apr_status_t retrieve(ap_socache_instance_t *instance, server_rec *s,
+                             const unsigned char *id, unsigned int idlen,
+                             unsigned char *data, unsigned int *datalen,
+                             apr_pool_t *pool)</dt>
+      <dd>Retrieve a cached object.</dd>
+
+      <dt>apr_status_t remove(ap_socache_instance_t *instance, server_rec *s,
+                           const unsigned char *id, unsigned int idlen,
+                           apr_pool_t *pool)</dt>
+      <dd>Remove an object from the cache.</dd>
+
+      <dt>void status(ap_socache_instance_t *instance, request_rec *r, int flags)</dt>
+      <dd>Dump the status of a cache instance for mod_status.</dd>
+
+      <dt>apr_status_t iterate(ap_socache_instance_t *instance, server_rec *s,
+                            void *userctx, ap_socache_iterator_t *iterator,
+                            apr_pool_t *pool)</dt>
+      <dd>Dump all cached objects through an iterator callback.</dd>
+    </dl>
+
   </section>
 
 </manualpage>