1.Apache做为现今web服务器用的最普遍也是最稳定的开源服务器软件 2.其工做模式有许多种,源码包安装httpd时可查看httpd-mpm.conf文件,该文件位于extra/conf目录中 3.目前主要有两种模式: event模式:一个进程中包含多个线程 prefork模式:一个进程中包含一个线程 worker模式:一个进程中包含多个线程
1.event是Apache最新的工做模式,它和worker模式很像,不一样的是在于它解决了keep-alive长链接的时候占用线程资源被浪费的问题 2.event工做模式在遇到某些不兼容的模块时,会失效,将会回退到worker模式 3.event工做模式须要Linux系统(Linux 2.6+)对epoll的支持,才能启用。须要补充的是HTTPS的链接(SSL) 4.在event工做模式中,会有一些专门的线程用来管理这些keep-alive类型的线程 5.当有真实请求过来的时候,将请求传递给服务器的线程执行完毕后,又容许它释放 6.这样, 一个线程就能处理几个请求了 ,实现了 异步非阻塞。这加强了在高并发场景下的请求处理
在httpd-mpm.conf配置文件中,如下是prefork模块的定义web
<IfModule mpm_event_module> StartServers 3 MinSpareThreads 75 MaxSpareThreads 250 ThreadsPerChild 25 MaxRequestWorkers 400 MaxConnectionsPerChild 0 </IfModule>
参数说明服务器
1.可根据生产环境进行调试,以肯定合适参数
2.优化参考并发
<IfModule mpm event module> ServerLimit 1000 StartServers 20 MinSpareThreads 25 MaxSpareThreads 1200 ThreadsPerChild 50 MaxRequestWorkers 2000 MaxC onnectionsPerChild 1000 </IfModule>
prefork参数讲解
在httpd-mpm.conf配置文件中,如下是prefork模块的定义异步
<IfModule mpm_ prefork module> StartServers 20 MinSpareServers 10 MaxSpareServers 50 MaxClients 150 MaxRequestsPerChild 0 </IfModule>
参数说明:ide
1.可根据生产环境进行调试,以肯定合适参数
2.优化参考高并发
<IfModule mpm prefork module> ServerLimit 1000 StartServers 10 MinSpareServers 10 MaxSpareServers 30 MaxClients 1000 MaxRequestsPerChild 5000 </IfModule>
目录属性参数:优化