Httpd Multi-Processing Module Concepts
External
Internal
Overview
The Multi-Processing Module (MPM) is a fundamental component of the server that is responsible for binding to network ports, accepting requests and dispatching children to handle requests. From a user's perspective, an MPM appears much like other Apache module, with the main difference that one and only one MPM must be loaded into the server at any time. The MPM must be chosen during compilation configuration and compiled into the server with the --with-mpm=NAME directive. The available MPMs are: prefork, worker, mpm_winnt, event, beds, mpm_netware, mpmt_os2:
MPMs
prefork
"prefork" is the default MPM for Unix. It determines httpd to function as a non-threaded web server, where each request is handled by a separated OS-level process. More details about prefork MPM:
worker
The worker MPM enables httpd to function as a hybrid multi-process/multi-threaded web server. More details about the worker MPM:
mpm_winnt
The default MPM for Windows.