1
0
mirror of https://github.com/apache/httpd.git synced 2026-01-06 09:01:14 +03:00
Brian Pane 77146c56ac Another experimental MPM derived from worker:
The threadpool MPM implements Aaron Bannert's "time-space tradeoff"
design managing idle workers.  Rather than putting accepted connections
into a queue, the threadpool MPM keeps idle worker threads in a stack.
Its dedicated listener thread retrieves an idle worker from the stack
before accepting a connection.  If there are no idle workers, the
listener blocks until a worker becomes available before doing an accept.

In many ways, threadpool is also a variant of leader/follower.  They
both maintain a stack of idle threads.  The difference is that threadpool
has a dedicated listener thread, and leader/follower rotates the listening
responsibility among its worker threads.  In my initial testing, the
leader/follower MPM performs very well on multiprocessor Solaris 8 when
listening on a single port, but poorly when listening on multiple ports.
(I don't know why this is happening.  What I've found so far is that
when you add a poll on the listen socket(s) before the accept in the
leader/follower MPM, all the socket-related syscalls in the httpd get
slower.  My hypothesis is that the thread scheduler is making an optimal
decision about where (on what CPU) to run the newly awakened thread if
its first syscall is an accept, and a nonoptimal decision if its first
syscall is a poll.)  The threadpool MPM performs better with multiple
listener ports, and in my testing so far it looks competitive with
leader/follower when running with a single listener.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94672 13f79535-47bb-0310-9956-ffa450edef68
2002-04-16 23:37:06 +00:00
2002-03-14 03:16:50 +00:00
2002-03-13 20:48:07 +00:00
2002-04-16 05:57:50 +00:00
2001-11-26 22:46:32 +00:00
2002-03-16 18:57:20 +00:00
2002-02-14 05:21:45 +00:00

                          Apache HTTP Server

  What is it?
  -----------

  The Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant
  web server.  Originally designed as a replacement for the NCSA HTTP
  Server, it has grown to be the most popular web server on the
  Internet.  As a project of the Apache Software Foundation, the
  developers aim to collaboratively develop and maintain a robust,
  commercial-grade, standards-based server with freely available
  source code.

  The Latest Version
  ------------------

  Details of the latest version can be found on the Apache HTTP
  server project page under http://httpd.apache.org/.

  Documentation
  -------------

  The documentation available as of the date of this release is
  included in HTML format in the docs/manual/ directory.  The most
  up-to-date documentation can be found at
  http://httpd.apache.org/docs-2.0/.

  Installation
  ------------

  Please see the file called INSTALL.

  Licensing
  ---------

  Please see the file called LICENSE.

  Contacts
  --------

     o If you want to be informed about new code releases, bug fixes,
       security fixes, general news and information about the Apache server
       subscribe to the apache-announce mailing list as described under
       http://httpd.apache.org/lists.html#http-announce

     o If you want freely available support for running Apache please join the
       Apache user community by subscribing to Users Mailing List at
       http://httpd.apache.org/userslist.html or one of the following USENET
       newsgroups:
       comp.infosystems.www.servers.unix
       comp.infosystems.www.servers.ms-windows
       Also available at: 
       http://groups.google.com/groups?group=comp.infosystems.www.servers

     o If you want commercial support for running Apache please contact
       one of the companies and contractors which are listed at
       http://www.apache.org/info/support.cgi

     o If you have a concrete bug report for Apache please go to the
       Apache Group Bug Database and submit your report:
       http://httpd.apache.org/bug_report.html

     o If you want to participate in actively developing Apache please
       subscribe to the `dev@httpd.apache.org' mailing list as described at
       http://www.apache.org/lists.html#http-dev

  Acknowledgments
  ----------------

  We wish to acknowledge the following copyrighted works that
  make up portions of the Apache software:

  Portions of this software were developed at the National Center
  for Supercomputing Applications (NCSA) at the University of
  Illinois at Urbana-Champaign.

  This software contains code derived from the RSA Data Security
  Inc. MD5 Message-Digest Algorithm, including various
  modifications by Spyglass Inc., Carnegie Mellon University, and
  Bell Communications Research, Inc (Bellcore).

  Regular expression support is provided by the PCRE library package, which
  is open source software, written by Philip Hazel, and copyright by the
  University of Cambridge, England.  The original software is available from
     ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

  Apache 2.0 relies heavily on the use of autoconf and libtool to provide
  a build environment.
Description
Веб-сервер Apache
Readme Multiple Licenses 468 MiB
Languages
C 90.7%
Python 5.4%
M4 1%
Shell 0.9%
CMake 0.4%
Other 1.3%