Windows: use Boost 1.59, msvc 14.0
[metaproxy-moved-to-github.git] / doc / session_shared.xml
1 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
2     "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
3  <!ENTITY copyright SYSTEM "copyright.xml">
4  <!ENTITY % idcommon SYSTEM "common/common.ent">
5      %idcommon;
6 ]>
7 <refentry id="ref-session_shared">
8  <refentryinfo>
9   <productname>Metaproxy</productname>
10   <orgname>Index Data</orgname>
11  </refentryinfo>
12
13  <refmeta>
14   <refentrytitle>session_shared</refentrytitle>
15   <manvolnum>3mp</manvolnum>
16   <refmiscinfo class="manual">Metaproxy Module</refmiscinfo>
17  </refmeta>
18
19  <refnamediv>
20   <refname>session_shared</refname>
21   <refpurpose> Metaproxy Module for sharing system ressorces between
22    threads</refpurpose>
23  </refnamediv>
24
25  <refsect1><title>DESCRIPTION</title>
26   <para>
27    This filter implements global sharing of
28    result sets (i.e. between threads and therefore between
29    clients), yielding performance improvements especially when
30    incoming requests are from a stateless environment such as a
31    web-server, in which the client process representing a session
32    might be any one of many.
33    It performs the following actions:
34    <itemizedlist>
35     <listitem>
36      <para>
37       Reduce the number of backend server sessions.
38      </para>
39     </listitem>
40     <listitem>
41      <para>
42       Reduce the number of initializations with backend servers.
43      </para>
44     </listitem>
45     <listitem>
46      <para>
47       Optimize the use of result-sets.
48       </para>
49      </listitem>
50    </itemizedlist>
51   </para>
52   <para>
53    Configurable values:
54    <variablelist>
55     <varlistentry><term>Session TTL</term>
56      <listitem>
57       <para>
58        When a backend session is idle for more than this amount of
59        time, given in seconds, it will be closed. Default value
60        is 90 seconds.
61       </para>
62      </listitem>
63     </varlistentry>
64     <varlistentry><term>Session max</term>
65      <listitem>
66       <para>
67        Specifiers maximum number of sessions to any particular
68        target. If this number (limit) is reached, the session_shared
69        module will re-use result sets even if TTL is not met.
70        Failing that the session_shared will return a diagnostic.
71        Default value is 100 sessions.
72       </para>
73      </listitem>
74     </varlistentry>
75     <varlistentry><term>Result-Set TTL</term>
76      <listitem>
77       <para>
78        When a backend session result-set is not in use for more than this
79        amount of time, given in seconds, it will be deleted/reused.
80        Default value is 30 seconds.
81       </para>
82      </listitem>
83     </varlistentry>
84     <varlistentry><term>Result-Set max</term>
85      <listitem>
86       <para>
87        This specifies the maximum number of result-sets in use by
88        a backend. The number only applies to targets/servers with named
89        result sets. Targets that do not support named result sets
90        may only have one active result set. Default value is 10.
91       </para>
92      </listitem>
93     </varlistentry>
94     <varlistentry><term>Result-Set restart</term>
95      <listitem>
96       <para>
97        Boolean which specifies whether session_shared should to try to
98        recover a failed search. If a search results in diagnostic 2:
99        temporary system error, or a negative hit count, the search
100        will be performed once again on another or new Z39.50 session.
101        Default value is true (enabled).
102       </para>
103      </listitem>
104     </varlistentry>
105    </variablelist>
106   </para>
107  </refsect1>
108
109  <refsect1><title>SCHEMA</title>
110    <literallayout><xi:include
111                      xi:href="../xml/schema/filter_session_shared.rnc"
112                      xi:parse="text"
113                      xmlns:xi="http://www.w3.org/2001/XInclude" />
114    </literallayout>
115  </refsect1>
116
117  <refsect1><title>EXAMPLES</title>
118   <para>
119    Configuration:
120    <screen><![CDATA[
121     <filter type="session_shared">
122      <resultset ttl="10" max="3" restart="true"/>
123      <session ttl="30" max="100"/>
124     </filter>
125 ]]>
126    </screen>
127   </para>
128  </refsect1>
129
130  <refsect1><title>SEE ALSO</title>
131   <para>
132    <citerefentry>
133     <refentrytitle>metaproxy</refentrytitle>
134     <manvolnum>1</manvolnum>
135    </citerefentry>
136   </para>
137  </refsect1>
138
139  &copyright;
140 </refentry>
141
142 <!-- Keep this comment at the end of the file
143 Local variables:
144 mode: nxml
145 nxml-child-indent: 1
146 End:
147 -->