You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by tr...@apache.org on 2003/11/26 04:06:57 UTC

cvs commit: httpd-2.0/docs/manual/misc perf-tuning.html.en perf-tuning.xml

trawick     2003/11/25 19:06:57

  Modified:    docs/manual/misc Tag: APACHE_2_0_BRANCH perf-tuning.html.en
                        perf-tuning.xml
  Log:
  remove references to Irix uslock() mutex primitive
  
  tweak mutex mechanism descriptions to describe them in terms of
  AcceptMutex directive instead of ancient 1.3-style CFLAGS for
  enabling to the mechanism
  
  PR:         24228
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.3.2.10  +16 -23    httpd-2.0/docs/manual/misc/perf-tuning.html.en
  
  Index: perf-tuning.html.en
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/docs/manual/misc/perf-tuning.html.en,v
  retrieving revision 1.3.2.9
  retrieving revision 1.3.2.10
  diff -u -r1.3.2.9 -r1.3.2.10
  --- perf-tuning.html.en	4 Aug 2003 16:51:47 -0000	1.3.2.9
  +++ perf-tuning.html.en	26 Nov 2003 03:06:57 -0000	1.3.2.10
  @@ -673,24 +673,24 @@
         directives.</p>
   
         <p>The directive <code class="directive"><a href="../mod/mpm_common.html#acceptmutex">AcceptMutex</a></code> can be used to
  -      change the selected mutuex implimentation at run-time.</p>
  +      change the selected mutex implementation at run-time.</p>
   
         <dl>
  -        <dt><code>USE_FLOCK_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex flock</code></dt>
   
           <dd>
             <p>This method uses the <code>flock(2)</code> system call to
             lock a lock file (located by the <code class="directive"><a href="../mod/mpm_common.html#lockfile">LockFile</a></code> directive).</p>
           </dd>
   
  -        <dt><code>USE_FCNTL_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex fcntl</code></dt>
   
           <dd>
             <p>This method uses the <code>fcntl(2)</code> system call to
             lock a lock file (located by the <code class="directive"><a href="../mod/mpm_common.html#lockfile">LockFile</a></code> directive).</p>
           </dd>
   
  -        <dt><code>USE_SYSVSEM_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex sysvsem</code></dt>
   
           <dd>
             <p>(1.3 or later) This method uses SysV-style semaphores to
  @@ -707,24 +707,7 @@
             on most IRIX boxes).</p>
           </dd>
   
  -        <dt><code>USE_USLOCK_SERIALIZED_ACCEPT</code></dt>
  -
  -        <dd>
  -          <p>(1.3 or later) This method is only available on IRIX, and
  -          uses <code>usconfig(2)</code> to create a mutex. While this
  -          method avoids the hassles of SysV-style semaphores, it is not
  -          the default for IRIX. This is because on single processor
  -          IRIX boxes (5.3 or 6.2) the uslock code is two orders of
  -          magnitude slower than the SysV-semaphore code. On
  -          multi-processor IRIX boxes the uslock code is an order of
  -          magnitude faster than the SysV-semaphore code. Kind of a
  -          messed up situation. So if you're using a multiprocessor IRIX
  -          box then you should rebuild your webserver with
  -          <code>-DUSE_USLOCK_SERIALIZED_ACCEPT</code> on the
  -          <code>EXTRA_CFLAGS</code>.</p>
  -        </dd>
  -
  -        <dt><code>USE_PTHREAD_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex pthread</code></dt>
   
           <dd>
             <p>(1.3 or later) This method uses POSIX mutexes and should
  @@ -735,11 +718,21 @@
             hanging and not responding. Static content only servers may
             work just fine.</p>
           </dd>
  +
  +        <dt><code>AcceptMutex posixsem</code></dt>
  +
  +        <dd>
  +          <p>(2.0 or later)  This method uses POSIX semaphores.  The
  +          semaphore ownership is not recovered if a thread in the process
  +          holding the mutex segfaults, resulting in a hang of the web
  +          server.</p>
  +        </dd>
  +
         </dl>
   
         <p>If your system has another method of serialization which
         isn't in the above list then it may be worthwhile adding code
  -      for it (and submitting a patch back to Apache).</p>
  +      for it to APR.</p>
   
         <p>Another solution that has been considered but never
         implemented is to partially serialize the loop -- that is, let
  
  
  
  1.3.2.11  +16 -23    httpd-2.0/docs/manual/misc/perf-tuning.xml
  
  Index: perf-tuning.xml
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/docs/manual/misc/perf-tuning.xml,v
  retrieving revision 1.3.2.10
  retrieving revision 1.3.2.11
  diff -u -r1.3.2.10 -r1.3.2.11
  --- perf-tuning.xml	4 Aug 2003 16:51:47 -0000	1.3.2.10
  +++ perf-tuning.xml	26 Nov 2003 03:06:57 -0000	1.3.2.11
  @@ -689,10 +689,10 @@
   
         <p>The directive <directive
         module="mpm_common">AcceptMutex</directive> can be used to
  -      change the selected mutuex implimentation at run-time.</p>
  +      change the selected mutex implementation at run-time.</p>
   
         <dl>
  -        <dt><code>USE_FLOCK_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex flock</code></dt>
   
           <dd>
             <p>This method uses the <code>flock(2)</code> system call to
  @@ -700,7 +700,7 @@
             >LockFile</directive> directive).</p>
           </dd>
   
  -        <dt><code>USE_FCNTL_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex fcntl</code></dt>
   
           <dd>
             <p>This method uses the <code>fcntl(2)</code> system call to
  @@ -708,7 +708,7 @@
             >LockFile</directive> directive).</p>
           </dd>
   
  -        <dt><code>USE_SYSVSEM_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex sysvsem</code></dt>
   
           <dd>
             <p>(1.3 or later) This method uses SysV-style semaphores to
  @@ -725,24 +725,7 @@
             on most IRIX boxes).</p>
           </dd>
   
  -        <dt><code>USE_USLOCK_SERIALIZED_ACCEPT</code></dt>
  -
  -        <dd>
  -          <p>(1.3 or later) This method is only available on IRIX, and
  -          uses <code>usconfig(2)</code> to create a mutex. While this
  -          method avoids the hassles of SysV-style semaphores, it is not
  -          the default for IRIX. This is because on single processor
  -          IRIX boxes (5.3 or 6.2) the uslock code is two orders of
  -          magnitude slower than the SysV-semaphore code. On
  -          multi-processor IRIX boxes the uslock code is an order of
  -          magnitude faster than the SysV-semaphore code. Kind of a
  -          messed up situation. So if you're using a multiprocessor IRIX
  -          box then you should rebuild your webserver with
  -          <code>-DUSE_USLOCK_SERIALIZED_ACCEPT</code> on the
  -          <code>EXTRA_CFLAGS</code>.</p>
  -        </dd>
  -
  -        <dt><code>USE_PTHREAD_SERIALIZED_ACCEPT</code></dt>
  +        <dt><code>AcceptMutex pthread</code></dt>
   
           <dd>
             <p>(1.3 or later) This method uses POSIX mutexes and should
  @@ -753,11 +736,21 @@
             hanging and not responding. Static content only servers may
             work just fine.</p>
           </dd>
  +
  +        <dt><code>AcceptMutex posixsem</code></dt>
  +
  +        <dd>
  +          <p>(2.0 or later)  This method uses POSIX semaphores.  The
  +          semaphore ownership is not recovered if a thread in the process
  +          holding the mutex segfaults, resulting in a hang of the web
  +          server.</p>
  +        </dd>
  +
         </dl>
   
         <p>If your system has another method of serialization which
         isn't in the above list then it may be worthwhile adding code
  -      for it (and submitting a patch back to Apache).</p>
  +      for it to APR.</p>
   
         <p>Another solution that has been considered but never
         implemented is to partially serialize the loop -- that is, let