dgaudet     97/08/08 04:28:33

  Modified:    htdocs/manual new_features_1_3.html
  Log:
  Add a few of the things I worked on.
  
  Revision  Changes    Path
  1.13      +51 -1     apache/htdocs/manual/new_features_1_3.html
  
  Index: new_features_1_3.html
  ===================================================================
  RCS file: /export/home/cvs/apache/htdocs/manual/new_features_1_3.html,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- new_features_1_3.html     1997/07/30 20:08:14     1.12
  +++ new_features_1_3.html     1997/08/08 11:28:32     1.13
  @@ -138,7 +138,21 @@
       directive now defaults to "Off". This means that, unless explictly
       turned on, the server will not resolve IP addresses into names. This
       was done to spare the Internet from unneccessary DNS traffic.
  -    
  +
  +<li><strong>Double-Reverse DNS enforced</strong><br>
  +    The <a href="mod/core.html#hostnamelookups">HostnameLookups</a> directive
  +    now supports double-reverse DNS.  (Known as <i>PARANOID</i> in the
  +    terminology of tcp_wrappers.)  An IP address passes a double-reverse
  +    DNS test if the forward map of the reverse map includes the original
  +    IP.  Regardless of the HostnameLookups setting,
  +    <a href="mod/mod_access.html">mod_access</a> access lists using DNS
  +    names <b>require</b> all names to pass a double-reverse DNS test.
  +
  +<li><strong>CIDR and Netmask access control</strong><br>
  +    <a href="mod/mod_access.html">mod_access</a> directives now support
  +    CIDR (Classless Inter-Domain Routing) style prefixes, and netmasks for
  +    greater control over IP access lists.
  +
   <li><strong>New child_init function for module API</strong><br>
   A new phase for Apache's API is called once per "heavy-weight process,"
   before any requests are handled. This allows the module to set up
  @@ -152,6 +166,42 @@
   <li><strong><a href="mod/mod_info.html#addmoduleinfo">AddModuleInfo</a>
   directive added to <a href="mod/mod_info.html">mod_info</a></strong><br>
   Allows additional information to be listed along with a specified module.
  +
  +<li><strong>Performance Improvements</strong>
  +    <ul>
  +    <li>IP-based virtual hosts are looked up via hash table,
  +     giving a performance boost on servers with large numbers of vhosts.
  +    <li>&lt;Directory&gt; parsing of requests has been vastly improved, 
giving
  +     speedups on configs with a lot of sections.
  +    <li>The critical path for static requests has fewer system calls.  This
  +     generally helps all requests.  (45 syscalls for a static request
  +     in 1.2 versus 29 in 1.3).
  +    <li><a href="mod/mod_proxy.html#ReceiveBufferSize">ReceiveBufferSize</a>
  +     directive gives mod_proxy's outgoing connections larger network
  +     buffers, for increased throughput.
  +    <li>The low level i/o routines use <code>writev</code> (where available)
  +     to issue multiple writes with a single system call.  They also avoid
  +     copying memory into buffers as much as possible.  The result is
  +     less CPU time spent on transferring large files.
  +    <li><i>XXX Incomplete:</i> Static requests are served using
  +     <code>mmap</code>, which means bytes are only copied from the
  +     disk buffer to the network buffer directly by the kernel.  The
  +     program never copies bytes around, which reduces CPU time.
  +    <li>When presented with a load spike, the server quickly adapts by
  +     spawning children at faster rates.
  +    <li>The code which dispatches modules was optimized to avoid repeatedly
  +     skipping over modules that don't implement certain phases of the
  +     API.  (This skipping showed up as 5% of the cpu time on profiles of
  +     a server with the default module mix.)
  +    <li>Revamp of the Unix scoreboard management code so that less time is
  +     spent counting children in various states.  Previously a scan was
  +     performed for each hit, now it is performed only once per second.
  +     This should be noticeable on servers running with hundreds of
  +     children and high loads.
  +    <li><i>XXX Incomplete:</i> New serialization choices improve performance
  +     on Linux, Solaris, and IRIX.
  +    </ul>
  +
   </ul>
   
   <!--#include virtual="footer.html" -->
  
  
  

Reply via email to