From: Joshua Slive Date: Thu, 23 Nov 2000 23:23:54 +0000 (+0000) Subject: Update the dexter and perchild docs, and add a missed directive. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=39644c67de90e45dc8faf34748a811c7e16f0107;p=apache Update the dexter and perchild docs, and add a missed directive. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87077 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/mod/dexter.html b/docs/manual/mod/dexter.html index 51c047d277..2bb7e9aa82 100644 --- a/docs/manual/mod/dexter.html +++ b/docs/manual/mod/dexter.html @@ -1,7 +1,7 @@ -Apache MPM mpmt_pthread +Apache MPM dexter @@ -14,10 +14,11 @@ > -

Multi-Processing Module mpmt_pthread

+

Multi-Processing Module dexter

-This Multi-Processing Module controls process and thread creation -using the pthread interface. +This Multi-Processing Module implements a hybrid multi-process +multi-threaded web server with a variable number of threads per +process.

Summary -

This Multi-Processing Module (MPM) is the default for most -unix-like operating systems. It uses pthread system calls to create a -hybrid multi-process multi-threaded server. The server starts a fixed -number of processes. The server adjusts to handle load by increasing -or decreasing the number of threads.

+

This Multi-Processing Module (MPM) implements a hybrid +multi-process, multi-threaded web server. A fixed number of processes +create threads to handle requests. Fluctuations in load are handled +by increasing or decreasing the number of threads in each process.

+ +

A single control process launches the number of child processes +indicated by the NumServers directive at server startup. +Each child process creates threads as specified in the +StartThreads directive. The individual threads then +listen for connections and serve them when they arrive.

+ +

Apache always tries to maintain a pool of spare or idle +server threads, which stand ready to serve incoming requests. In this +way, clients do not need to wait for new threads to be created. For +each child process, Apache assesses the number of idle threads and +creates or destroys threads to keep this number within the boundaries +specified by MinSpareThreads and +MaxSpareThreads. Since this process is very +self-regulating, it is rarely necessary to modify these directives +from their default values. The maximum number of clients that may be +served simultaneously is determined by multiplying the number +of server processes that will be created (NumServers) by +the maximum number of threads created in each process +(MaxThreadsPerChild).

+ +

While the parent process is usually started as root under Unix in +order to bind to port 80, the child processes and threads are launched +by Apache as a less-privileged user. The User and +Group directives are used to set the privileges of the +Apache child processes. The child processes must be able to read all +the content that will be served, but should have as few privileges +beyond that as possible. In addition, unless suexec is used, these directives also set +the privileges which will be inherited by CGI scripts.

+ +

MaxRequestsPerChild controls how frequently the server +recycles processes by killing old ones and launching new ones.

+ +

See also: Setting which addresses and ports +Apache uses.

+

Directives

@@ -56,6 +93,7 @@ or decreasing the number of threads.

  • LockFile
  • MaxRequestsPerChild
  • MaxSpareThreads
  • +
  • MaxThreadsPerChild
  • MinSpareThreads
  • NumServers
  • ScoreBoardFile
  • diff --git a/docs/manual/mod/directives.html b/docs/manual/mod/directives.html index 2c2512b067..ee5cf34468 100644 --- a/docs/manual/mod/directives.html +++ b/docs/manual/mod/directives.html @@ -159,6 +159,7 @@ of the terms used in their descriptions available.
  • MaxRequestsPerChild
  • MaxSpareServers
  • MaxSpareThreads +
  • MaxThreadsPerChild
  • MetaDir
  • MetaFiles
  • MetaSuffix diff --git a/docs/manual/mod/mpm_common.html b/docs/manual/mod/mpm_common.html index b317e37526..8efc5e7844 100644 --- a/docs/manual/mod/mpm_common.html +++ b/docs/manual/mod/mpm_common.html @@ -32,6 +32,7 @@ than one multi-processing module (MPM).
  • MaxClients
  • MaxRequestsPerChild
  • MaxSpareThreads
  • +
  • MaxThreadsPerChild
  • MinSpareThreads
  • NumServers
  • ScoreBoardFile
  • @@ -416,7 +417,6 @@ behavior to limit the number of connections per child.

    MaxSpareThreads directive

    -


    +

    MaxThreadsPerChild directive

    +

    Syntax: MaxThreadsPerChild number
    +Default: MaxThreadsPerChild 64 +Context: server config
    +Status: core
    +Module: mpmt_pthread, perchild

    + +

    Maximum number of threads per child. For MPMs with a variable +number of threads per child, this directive sets the maximum number of +threads that will be created in each child process. To increase this +value beyond its default, it is necessary to to change the value of +the compile-time define HARD_THREAD_LIMIT and recompile +the server.

    + +


    +

    MinSpareThreads directive

    -Apache MPM mpmt_pthread +Apache MPM perchild @@ -38,7 +38,13 @@ REL="Help"

    Summary

    -

    Some description on how this whole thing works with a couple examples.

    +

    This module creates and controls processes and threads in a manner +identical to dexter. However, it adds +the extra ability to specify that specific processes should serve +requests under different userids. These processes can then be +associated with specific virtual hosts.

    + +

    Directives

    @@ -54,6 +60,7 @@ REL="Help"
  • LockFile
  • MaxRequestsPerChild
  • MaxSpareThreads
  • +
  • MaxThreadsPerChild
  • MinSpareThreads
  • NumServers
  • ScoreBoardFile