Fix Metaproxy stops logging after check config failed MP-590
[metaproxy-moved-to-github.git] / doc / session_shared.xml
index 5bc35ca..8b0ad1c 100644 (file)
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" 
-    "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd" [
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
+    "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
  <!ENTITY copyright SYSTEM "copyright.xml">
+ <!ENTITY % idcommon SYSTEM "common/common.ent">
+     %idcommon;
 ]>
-<!-- $Id: session_shared.xml,v 1.2 2006-04-20 11:12:32 mike Exp $ -->
-<refentry>
+<refentry id="ref-session_shared">
+ <refentryinfo>
+  <productname>Metaproxy</productname>
+  <info><orgname>Index Data</orgname></info>
+ </refentryinfo>
+
  <refmeta>
   <refentrytitle>session_shared</refentrytitle>
   <manvolnum>3mp</manvolnum>
-  <refmiscinfo>Metaproxy Module</refmiscinfo>
+  <refmiscinfo class="manual">Metaproxy Module</refmiscinfo>
  </refmeta>
+
  <refnamediv>
   <refname>session_shared</refname>
-  <refpurpose>Module for sharing result-sets etc. between threads</refpurpose>
+  <refpurpose> Metaproxy Module for sharing system ressorces between
+   threads</refpurpose>
  </refnamediv>
+
  <refsect1><title>DESCRIPTION</title>
   <para>
-   This module is experimental and NOT SUPPORTED.  When complete, it
-   will enable Metaproxy to share resources such as result-sets
-   between multiple threads, yielding performance improvements.
+   This filter implements global sharing of
+   result sets (i.e. between threads and therefore between
+   clients), yielding performance improvements especially when
+   incoming requests are from a stateless environment such as a
+   web-server, in which the client process representing a session
+   might be any one of many.
+   It performs the following actions:
+   <itemizedlist>
+    <listitem>
+     <para>
+      Reduce the number of backend server sessions.
+     </para>
+    </listitem>
+    <listitem>
+     <para>
+      Reduce the number of initializations with backend servers.
+     </para>
+    </listitem>
+    <listitem>
+     <para>
+      Optimize the use of result-sets.
+      </para>
+     </listitem>
+   </itemizedlist>
+  </para>
+  <para>
+   Configurable values:
+   <variablelist>
+    <varlistentry><term>Session TTL</term>
+     <listitem>
+      <para>
+       When a backend session is idle for more than this amount of
+       time, given in seconds, it will be closed. Default value
+       is 90 seconds.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry><term>Session max</term>
+     <listitem>
+      <para>
+       Specifiers maximum number of sessions to any particular
+       target. If this number (limit) is reached, the session_shared
+       module will re-use result sets even if TTL is not met.
+       Failing that the session_shared will return a diagnostic.
+       Default value is 100 sessions.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry><term>Result-Set TTL</term>
+     <listitem>
+      <para>
+       When a backend session result-set is not in use for more than this
+       amount of time, given in seconds, it will be deleted/reused.
+       Default value is 30 seconds.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry><term>Result-Set max</term>
+     <listitem>
+      <para>
+       This specifies the maximum number of result-sets in use by
+       a backend. The number only applies to targets/servers with named
+       result sets. Targets that do not support named result sets
+       may only have one active result set. Default value is 10.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry><term>Result-Set restart</term>
+     <listitem>
+      <para>
+       Boolean which specifies whether session_shared should to try to
+       recover a failed search. If a search results in diagnostic 2:
+       temporary system error, or a negative hit count, the search
+       will be performed once again on another or new Z39.50 session.
+       Default value is true (enabled).
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
   </para>
  </refsect1>
 
+ <refsect1><title>SCHEMA</title>
+   <literallayout><xi:include
+                    xi:href="../xml/schema/filter_session_shared.rnc"
+                    xi:parse="text"
+                    xmlns:xi="http://www.w3.org/2001/XInclude" />
+   </literallayout>
+ </refsect1>
+
  <refsect1><title>EXAMPLES</title>
   <para>
-   A typical configuration looks like this:
+   Configuration:
    <screen><![CDATA[
     <filter type="session_shared">
-     ### Not yet defined
+     <resultset ttl="10" max="3" restart="true"/>
+     <session ttl="30" max="100"/>
     </filter>
 ]]>
    </screen>
   </para>
- </refsect1> 
+ </refsect1>
+
  <refsect1><title>SEE ALSO</title>
   <para>
    <citerefentry>
    </citerefentry>
   </para>
  </refsect1>
+
  &copyright;
 </refentry>
 
 <!-- Keep this comment at the end of the file
 Local variables:
-mode: sgml
-sgml-omittag:t
-sgml-shorttag:t
-sgml-minimize-attributes:nil
-sgml-always-quote-attributes:t
-sgml-indent-step:1
-sgml-indent-data:t
-sgml-parent-document:nil
-sgml-local-catalogs: nil
-sgml-namecase-general:t
+mode: nxml
+nxml-child-indent: 1
 End:
 -->