mpm_netware.html revision ac6d1ce7ccb1950bb2145a5c2c3498235353bcb0
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen<html xmlns="http://www.w3.org/TR/xhtml1/strict"><head><!--
1176124297af5c56e932c0863c6637ff21d8a0efTimo SirainenXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen This file is generated from xml source: DO NOT EDIT
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo SirainenXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen--><title>mpm_netware - Apache HTTP Server</title><link href="/style/manual.css" type="text/css" rel="stylesheet"/></head><body><blockquote><div align="center"><img alt="[APACHE DOCUMENTATION]" src="/images/sub.gif"/><h3>Apache HTTP Server Version 2.0</h3></div><h1 align="center">Apache Module mpm_netware</h1><table cellspacing="1" cellpadding="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td valign="top"><span class="help">Description:</span></td><td>Multi-Processing Module implementing an exclusively threaded web
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen server optimized for Novell NetWare</td></tr><tr><td><a href="module-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="module-dict.html#ModuleIdentifier" class="help">Module Identifier:</a></td><td>mpm_netware_module</td></tr></table></td></tr></table><h2>Summary</h2>
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen <p>This Multi-Processing Module (MPM) implements an exclusively threaded web server
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen that has been optimized for Novell NetWare.</p>
20b2d47ed762ca2c009aa37e360af6f223ac71bdTimo Sirainen <p>The main thread is responsible for launching child
20b2d47ed762ca2c009aa37e360af6f223ac71bdTimo Sirainen worker threads which listen for connections and serve them when they
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainen arrive. Apache always tries to maintain several <em>spare</em>
d798962a54c5cda054d57a0cfc7e5f47dfa20f6eTimo Sirainen or idle worker threads, which stand ready to serve incoming
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen requests. In this way, clients do not need to wait for a new
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen child threads to be spawned before their requests can be
0a1ec0f2a38370e8a073a60023b4365491947f6fTimo Sirainen <p>The <code>StartThreads</code>, <code>MinSpareThreads</code>,
d798962a54c5cda054d57a0cfc7e5f47dfa20f6eTimo Sirainen <code>MaxSpareThreads</code>, and <code>MaxThreads</code>
20b2d47ed762ca2c009aa37e360af6f223ac71bdTimo Sirainen regulate how the main thread creates worker threads to serve
20b2d47ed762ca2c009aa37e360af6f223ac71bdTimo Sirainen requests. In general, Apache is very self-regulating, so most
7327394e30c1020b9a2a49c72a7e3d0f7803e680Timo Sirainen sites do not need to adjust these directives from their default
7327394e30c1020b9a2a49c72a7e3d0f7803e680Timo Sirainen values. Sites which need to serve more than 250 simultaneous
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen requests may need to increase <code>MaxThreads</code>, while
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen sites with limited memory may need to decrease
d798962a54c5cda054d57a0cfc7e5f47dfa20f6eTimo Sirainen <code>MaxThreads</code> to keep the server from thrashing (spawning and
d798962a54c5cda054d57a0cfc7e5f47dfa20f6eTimo Sirainen terminating idle threads). More information about
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainen tuning process creation is provided in the <a href="/misc/perf-tuning.html">performance hints</a>
d798962a54c5cda054d57a0cfc7e5f47dfa20f6eTimo Sirainen documentation.</p>
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen <p><code>MaxRequestsPerChild</code> controls how frequently the
55058d5f50f7e53bb22df4fa6ae951c8001416abTimo Sirainen server recycles processes by killing old ones and launching new
55058d5f50f7e53bb22df4fa6ae951c8001416abTimo Sirainen ones. On the NetWare OS it is highly recommended that this directive
55058d5f50f7e53bb22df4fa6ae951c8001416abTimo Sirainen remain set to 0. This allows worker threads to continue servicing
55058d5f50f7e53bb22df4fa6ae951c8001416abTimo Sirainen requests indefinitely.</p>
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen <p>See also: <a href="/bind.html">Setting which addresses and
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen<h2>Directives</h2><ul><li><a href="mpm_common.html#listen">Listen</a></li><li><a href="mpm_common.html#listenbacklog">ListenBacklog</a></li><li><a href="mpm_common.html#maxrequestsperchild">MaxRequestsPerChild</a></li><li><a href="#maxsparethreads">MaxSpareThreads</a></li><li><a href="#maxthreads">MaxThreads</a></li><li><a href="#minsparethreads">MinSpareThreads</a></li><li><a href="mpm_common.html#sendbuffersize">SendBufferSize</a></li><li><a href="#startthreads">StartThreads</a></li><li><a href="#threadstacksize">ThreadStackSize</a></li></ul><hr/><h2><a name="MaxSpareThreads">MaxSpareThreads</a> <a name="maxsparethreads">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td><strong>Description: </strong></td><td/></tr><tr><td><a href="directive-dict.html#Syntax" class="help">Syntax:</a></td><td>MaxSpareThreads <em>number</em></td></tr><tr><td><a href="directive-dict.html#Default" class="help">Default:</a></td><td><code>MaxSpareThreads 100</code></td></tr><tr><td><a href="directive-dict.html#Context" class="help">Context:</a></td><td>server config</td></tr><tr><td><a href="directive-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="directive-dict.html#Module" class="help">Module:</a></td><td>mpm_netware</td></tr></table></td></tr></table>
c4b376dd6e0c423006d7ac83a39253bcaf8e7c47Timo Sirainen <p>The <code class="directive">MaxSpareThreads</code> directive sets the
1176124297af5c56e932c0863c6637ff21d8a0efTimo Sirainen desired maximum number of <em>idle</em> worker threads. An idle
13d58f3be3356c68ad4f53781f69bc6fe5623700Timo Sirainen worker thread is one which is not handling a request. If there are
13d58f3be3356c68ad4f53781f69bc6fe5623700Timo Sirainen more than MaxSpareThreads idle, then the main thread will kill off
13d58f3be3356c68ad4f53781f69bc6fe5623700Timo Sirainen the excess worker threads.</p>
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen <p>Tuning of this parameter should only be necessary on very
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen busy sites. Setting this parameter to a large number is almost
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen always a bad idea.</p>
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen<hr/><h2><a name="MaxThreads">MaxThreads</a> <a name="maxthreads">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td><strong>Description: </strong></td><td/></tr><tr><td><a href="directive-dict.html#Syntax" class="help">Syntax:</a></td><td>MaxThreads <em>number</em></td></tr><tr><td><a href="directive-dict.html#Default" class="help">Default:</a></td><td><code>MaxThreads 250</code></td></tr><tr><td><a href="directive-dict.html#Context" class="help">Context:</a></td><td>server config</td></tr><tr><td><a href="directive-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="directive-dict.html#Module" class="help">Module:</a></td><td>mpm_netware</td></tr></table></td></tr></table>
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen<p>The MaxThreads directive sets the desired maximum
4fc52b7b25c3d3f42348903e0154840f8761f306Timo Sirainen number worker threads allowable.</p>
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainen<hr/><h2><a name="MinSpareThreads">MinSpareThreads</a> <a name="minsparethreads">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td><strong>Description: </strong></td><td/></tr><tr><td><a href="directive-dict.html#Syntax" class="help">Syntax:</a></td><td>MinSpareThreads <em>number</em></td></tr><tr><td><a href="directive-dict.html#Default" class="help">Default:</a></td><td><code>MinSpareThreads 10</code></td></tr><tr><td><a href="directive-dict.html#Context" class="help">Context:</a></td><td>server config</td></tr><tr><td><a href="directive-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="directive-dict.html#Module" class="help">Module:</a></td><td>mpm_netware</td></tr></table></td></tr></table>
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainen<p>The <code class="directive">MinSpareThreads</code> directive sets the
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainendesired minimum number of <em>idle</em> worker threads. An idle worker
5c2d695acf9f95ae0dcdda89c4d2391ceda4d672Timo Sirainenthread is one which is not handling a request. If there are fewer than
20b2d47ed762ca2c009aa37e360af6f223ac71bdTimo SirainenMinSpareThreads idle, then the main thread spawns new worker.</p>
<hr/><h2><a name="StartThreads">StartThreads</a> <a name="startthreads">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td><strong>Description: </strong></td><td/></tr><tr><td><a href="directive-dict.html#Syntax" class="help">Syntax:</a></td><td>StartThreads <em>number</em></td></tr><tr><td><a href="directive-dict.html#Default" class="help">Default:</a></td><td><code>StartThreads 50</code></td></tr><tr><td><a href="directive-dict.html#Context" class="help">Context:</a></td><td>server config</td></tr><tr><td><a href="directive-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="directive-dict.html#Module" class="help">Module:</a></td><td>mpm_netware</td></tr></table></td></tr></table>
<hr/><h2><a name="ThreadStackSize">ThreadStackSize</a> <a name="threadstacksize">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td><strong>Description: </strong></td><td/></tr><tr><td><a href="directive-dict.html#Syntax" class="help">Syntax:</a></td><td>ThreadStackSize <em>number</em></td></tr><tr><td><a href="directive-dict.html#Default" class="help">Default:</a></td><td><code>ThreadStackSize 65536</code></td></tr><tr><td><a href="directive-dict.html#Context" class="help">Context:</a></td><td>server config</td></tr><tr><td><a href="directive-dict.html#Status" class="help">Status:</a></td><td>MPM</td></tr><tr><td><a href="directive-dict.html#Module" class="help">Module:</a></td><td>mpm_netware</td></tr></table></td></tr></table>