ypb——奋斗之路

风雨坎坷,一路向前

apache的三种运行模式

apache有三种运行模式:
1, prefork MPM;
2, worker MPM;
3, perchild MPM.

 

prefork MPM
管理员应选择prefork MPM来实施基于流程的Web服务器。虽然基于流程的服务器有一些速度较慢的性能,它们通过模块来提供稳定性和兼容性,这些模块不支持线程。为了改进性能,服务器的父流程fork多个子流程并使它们能够用于应答请求。当接收到请求时,服务器把其分配给子流程。如果没有子流程可用,服务器创建新的子流程并把它添加到库中。但是,子流程的创建会导致延迟。当配置这一MPM时,管理员可以限制启动时可以创建的子流程数、最大的子流程数等。这一MPM有利于形成一个稳定的Apache服务器,但同时会影响性能和占用内存,因为单个流程的大小会占很大一部分。

The worker MPM

为了实施混合服务器,管理员可以选择worker MPM,它提供比prefork MPM更卓越的可靠性、故障恢复能力和可扩展性。启动时父流程创建规定数量的子流程,反过来每个子流程包含多个线程。每个子流程中只有一个线程聆听网络,它简化了程序代码,减少了流程之间的协作,从而提高性能。虽然这一MPM稳定且性能优于prefork,由于它是基于线程,与其一同使用的所有模块都必须是完全的线程-安全。大多数Apache 1.3模块不是线程安全,并且由于worker MPM不向后兼容,因此,使用这一MPM的管理员也不能一同使用Apache 1.3模块和Apache 2.0。但是使用prefork MPM来编译服务器允许管理员使用Apache 1.3模块。

The perchild MPM
如果遇到这样一种情况,考虑到安全性和性能,需要Apache流程基于不同的用户ID来运行,管理员可以使用perchild MPM 来编译混合服务器。互联网服务供应商(ISP)通常使用这一MPM来实现虚拟托管。当perchild启动时,它创建规定数量的流程,每个流程有规定数量的线程和专用的用户ID。如果服务器上的负载增加,它使用现有流程之一来创建新线程,而不是创建新流程。这种MPM是最可扩展,但也最不可靠。

阅读更多
个人分类: Apache
上一篇电脑小毛病解决方案收集
下一篇windows下搭建php环境,php+apache+mysql
想对作者说点什么? 我来说一句

tomcat的运行模式

2015年09月17日 774B 下载

几种电梯运行模式的比较及应用

2010年07月18日 326KB 下载

Spark 2017最新运行命令样例

2017年08月04日 2KB 下载

24小时教会PHP_ MySQL and Apache

2008年07月01日 3.25MB 下载

apache三种虚拟主机的配置

2011年01月28日 1KB 下载

apache整合tomcat

2010年12月22日 106KB 下载

SQL SERVER事务处理详解.doc

2010年02月09日 62KB 下载

php_memcache.dll

2013年12月31日 85KB 下载

Unity AnimationPlayer工具

2017年05月16日 7.16MB 下载

没有更多推荐了,返回首页

关闭
关闭