Moved apache code into a folder to help prepare for packaging where we dont want...
[httpd-crcsyncproxy.git] / apache / docs / manual / mod / threadpool.xml
blob091668b9fd35993ddd85151f2e828099b7647519
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
4 <!-- $LastChangedRevision$ -->
6 <!--
7  Licensed to the Apache Software Foundation (ASF) under one or more
8  contributor license agreements.  See the NOTICE file distributed with
9  this work for additional information regarding copyright ownership.
10  The ASF licenses this file to You under the Apache License, Version 2.0
11  (the "License"); you may not use this file except in compliance with
12  the License.  You may obtain a copy of the License at
14      http://www.apache.org/licenses/LICENSE-2.0
16  Unless required by applicable law or agreed to in writing, software
17  distributed under the License is distributed on an "AS IS" BASIS,
18  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  See the License for the specific language governing permissions and
20  limitations under the License.
21 -->
23 <modulesynopsis metafile="threadpool.xml.meta">
24 <name>threadpool</name>
25 <description>Yet another experimental variant of the standard
26 <module>worker</module> MPM</description>
27 <status>MPM</status>
28 <sourcefile>threadpool.c</sourcefile>
29 <identifier>mpm_threadpool_module</identifier>
31 <summary>
32     <note type="warning"><title>Warning</title>
33       <p>This MPM is a developer playground and highly experimental, so it
34       may or may not work as expected.</p>
35     </note>
37     <p>This is an experimental variant of the standard worker MPM.
38     Rather than queuing connections like the worker MPM, the
39     <module>threadpool</module> MPM queues idle worker threads and
40     hands each accepted connection to the next available worker.</p>
42     <p>The <module>threadpool</module> MPM can't match the performance of
43     the <module>worker</module> MPM in benchmark testing. As of 2.0.39,
44     some of the key load-throttling concepts from the <module
45     >threadpool</module> MPM have been incorporated into the <module
46     >worker</module> MPM. The <module>threadpool</module> code is useful
47     primarily as a research platform. For general-purpose use and for any
48     production environments, use <module>worker</module> instead.</p>
49 </summary>
51 <directivesynopsis location="mpm_common"><name>AcceptMutex</name>
52 </directivesynopsis>
53 <directivesynopsis location="mpm_common"><name>CoreDumpDirectory</name>
54 </directivesynopsis>
55 <directivesynopsis location="mpm_common"><name>EnableExceptionHook</name>
56 </directivesynopsis>
57 <directivesynopsis location="mpm_common"><name>Group</name>
58 </directivesynopsis>
59 <directivesynopsis location="mpm_common"><name>Listen</name>
60 </directivesynopsis>
61 <directivesynopsis location="mpm_common"><name>ListenBacklog</name>
62 </directivesynopsis>
63 <directivesynopsis location="mpm_common"><name>ReceiveBufferSize</name>
64 </directivesynopsis>
65 <directivesynopsis location="mpm_common"><name>SendBufferSize</name>
66 </directivesynopsis>
67 <directivesynopsis location="mpm_common"><name>LockFile</name>
68 </directivesynopsis>
69 <directivesynopsis location="mpm_common"><name>MaxClients</name>
70 </directivesynopsis>
71 <directivesynopsis location="mpm_common"><name>MaxMemFree</name>
72 </directivesynopsis>
73 <directivesynopsis location="mpm_common"><name>MaxRequestsPerChild</name>
74 </directivesynopsis>
75 <directivesynopsis location="mpm_common"><name>MaxSpareThreads</name>
76 </directivesynopsis>
77 <directivesynopsis location="mpm_common"><name>MinSpareThreads</name>
78 </directivesynopsis>
79 <directivesynopsis location="mpm_common"><name>PidFile</name>
80 </directivesynopsis>
81 <directivesynopsis location="mpm_common"><name>ScoreBoardFile</name>
82 </directivesynopsis>
83 <directivesynopsis location="mpm_common"><name>ServerLimit</name>
84 </directivesynopsis>
85 <directivesynopsis location="mpm_common"><name>StartServers</name>
86 </directivesynopsis>
87 <directivesynopsis location="mpm_common"><name>ThreadLimit</name>
88 </directivesynopsis>
89 <directivesynopsis location="mpm_common"><name>ThreadsPerChild</name>
90 </directivesynopsis>
91 <directivesynopsis location="mpm_common"><name>ThreadStackSize</name>
92 </directivesynopsis>
93 <directivesynopsis location="mpm_common"><name>User</name>
94 </directivesynopsis>
96 </modulesynopsis>