用load 加载的都是独立模块,就是在编译时没有把它编译进二制代码的核心里面,
好处是安装、卸载都非常方便,缺点是执行效率可能不高
mpm:多路处理模块
配置选项 ./configure
--with-mpm=prefork :默认值,非线程型的、预派生的MPM,只要设为一个足够大的数值以处理潜在的请求高峰就行,同时又不能太大,以免超出来了内存的承受能力,对内存的要求比较高
选用这个mpm,最大可能只能有256个进程,默认安装是150个
--with-mpm=worker:线程型的,实现了混合的多线程多处理MPM,允许一个子进程中包含多个线程。
每个线程处理一个请求。该MPM通常对高流量的服务器是一个不错的选择。因为它比prefork MPM需要更少的内存且更具有伸缩性。
StartServers:初始化进程数(100,建议值,下同)
MinSpareThreads:空闲进程的最小值(50)
MaxSpareThreads:空闲进程的最大值(150)
Maxclients:最大进程数(500)
ServerLimit:活动子进程的硬限制(20)
ThreadsPerChild:(上面)每个子进程可以再派生的子线程的数量(25)
大约:MaxClients=ServerLimit*ThreadsPerChild
依据这个值,能达到500个并发(待测试)
所在文件:httpd-mpm.conf
<IfModule mpm_worker_module>]
...
MaxClients 500
...
</IfModule>