]> granicus.if.org Git - apache/commitdiff
* mod/mod_proxy.xml: First Draft trying to explain how to tune pooled connections.
authorPaul Querna <pquerna@apache.org>
Sat, 11 Dec 2004 08:25:39 +0000 (08:25 +0000)
committerPaul Querna <pquerna@apache.org>
Sat, 11 Dec 2004 08:25:39 +0000 (08:25 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@111587 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/mod/mod_proxy.html.en
docs/manual/mod/mod_proxy.xml

index 786862070ca914d5a4fe4869c014a7dadbc3dbce..7bc940596cb6175a61b75e405ad6f9902ac78535 100644 (file)
@@ -718,7 +718,7 @@ through</td></tr>
 <div class="directive-section"><h2><a name="ProxyPass" id="ProxyPass">ProxyPass</a> <a name="proxypass" id="proxypass">Directive</a></h2>
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Maps remote servers into the local server URL-space</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyPass [<var>path</var>] !|<var>url</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyPass [<var>path</var>] !|<var>url</var> [<var>key=value</var> <var>key=value</var> ...]]</code></td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
@@ -758,6 +758,26 @@ through</td></tr>
       general <code class="directive">ProxyPass</code> directive.</p>
     </div>
 
+    <p>New in Apache 2.1, is the ability to use pooled connections to a 
+    backend server. Using the <code>key=value</code> parameters it is possible
+    to tune this connection pooling. The default for a <code>Hard Maximum</code>
+    for the number of connections is the number of threads per process in the 
+    active MPM. In the Prefork MPM, this is always 1, while with the Worker MPM
+    it is controlled by the <code class="directive">ThreadsPerChild</code>.</p>
+
+    <p>Setting <code>min</code> will determine how many connections will always 
+    be open to the backend server. Upto the Soft Maximum or <code>smax</code> 
+    number of connections will be created on demand. Any connections above 
+    <code>smax</code> are subject to a time to live or <code>ttl</code>.  Apache
+    will never create more than the Hard Maximum or <code>hmax</code> connections
+    to the backend server.</p>
+
+    <div class="example"><p><code>
+        ProxyPass /example http://backend.example.com min=0 smax=5 hmax=20 ttl=60
+    </code></p></div>
+
+    
+
     <p>When used inside a <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> section, the first argument is omitted and the local
     directory is obtained from the <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code>.</p>
 
index 307a433088a6cc0cda4beb8c11e7828a3d26f2f8..081ae2edeffd61f3bf1799d070c6be4bf344f82e 100644 (file)
@@ -532,7 +532,7 @@ expressions</description>
 <directivesynopsis>
 <name>ProxyPass</name>
 <description>Maps remote servers into the local server URL-space</description>
-<syntax>ProxyPass [<var>path</var>] !|<var>url</var></syntax>
+<syntax>ProxyPass [<var>path</var>] !|<var>url</var> [<var>key=value</var> <var>key=value</var> ...]]</syntax>
 <contextlist><context>server config</context><context>virtual host</context>
 <context>directory</context>
 </contextlist>
@@ -573,6 +573,30 @@ expressions</description>
       general <directive>ProxyPass</directive> directive.</p>
     </note>
 
+    <p>New in Apache 2.1, is the ability to use pooled connections to a 
+    backend server. Using the <code>key=value</code> parameters it is possible
+    to tune this connection pooling. The default for a <code>Hard Maximum</code>
+    for the number of connections is the number of threads per process in the 
+    active MPM. In the Prefork MPM, this is always 1, while with the Worker MPM
+    it is controlled by the <directive>ThreadsPerChild</directive>.</p>
+
+    <p>Setting <code>min</code> will determine how many connections will always 
+    be open to the backend server. Upto the Soft Maximum or <code>smax</code> 
+    number of connections will be created on demand. Any connections above 
+    <code>smax</code> are subject to a time to live or <code>ttl</code>.  Apache
+    will never create more than the Hard Maximum or <code>hmax</code> connections
+    to the backend server.</p>
+
+    <example>
+        ProxyPass /example http://backend.example.com min=0 smax=5 hmax=20 ttl=60
+    </example>
+
+    <!-- Still to be documented:
+             retry acquire timeout 
+             iobuffersize receivebuffersize 
+             keepalive route redirect 
+         See modules/proxy/mod_proxy.c set_worker_param() for details.  -->
+
     <p>When used inside a <directive type="section" module="core"
     >Location</directive> section, the first argument is omitted and the local
     directory is obtained from the <directive type="section" module="core"