<-
Apache > HTTP 服务器 > 文档 > 版本 2.2

Please note

This document refers to the 2.2 version of Apache httpd, which is no longer maintained. The active release is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

多处理模块(MPM)

可用语言:  de  |  en  |  es  |  fr  |  ja  |  ko  |  tr  |  zh-cn 

本文档介绍了什么是多处理模块,以及 Apache HTTP 服务器如何使用它们。

top

介绍

Apache HTTP 服务器被设计为一个功能强大,并且灵活的 web 服务器, 可以在很多平台与环境中工作。不同平台和不同的环境往往需要不同 的特性,或可能以不同的方式实现相同的特性最有效率。Apache 通过模块化的设计来适应各种环境。这种设计允许网站管理员通过在 编译时或运行时,选择哪些模块将会加载在服务器中,来选择服务器特性。

Apache 2.0 扩展此模块化设计到最基本的 web 服务器功能。 它提供了可以选择的多处理模块(MPM),用来绑定到网络端口上,接受请求, 以及调度子进程处理请求。

扩展到这一级别的服务器模块化设计,带来两个重要的好处:

在用户看来,MPM 很像其它 Apache 模块。主要是区别是,在任何时间, 必须有一个,而且只有一个 MPM 加载到服务器中。可用的 MPM 列表位于 模块索引页面

top

选择 MPM

MPM 必须在编译前夕,配置时指定,然后编译到服务器程序中。 仅当编译器知道使用了线程时,它才有能力优化许多函数。

为了使用指定的 MPM,请在执行 configure 时,使用参数 --with-mpm=NAMENAME 是指定的 MPM 名称。

编译完成后,可以使用 ./httpd -l 来确定选择的 MPM。 此命令会列出编译到服务器程序中的所有模块,包括 MPM。

top

默认 MPM

下表列出了不同系统的默认 MPM。如果你不在编译时选择,那么它就是你将要使用的 MPM。

BeOSbeos
Netwarempm_netware
OS/2mpmt_os2
Unixprefork
Windowsmpm_winnt

可用语言:  de  |  en  |  es  |  fr  |  ja  |  ko  |  tr  |  zh-cn 

top

评论

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.