Apache工作模式介绍
1.Apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件
2.其工作模式有许多种,源码包安装httpd时可查看httpd-mpm.conf文件,该文件位于extra/conf目录中
3.目前主要有两种模式:
event模式:一个进程中包含多个线程
prefork模式:一个进程中包含一个线程
worker模式:一个进程中包含多个线程
event工作模式介绍
1.event是Apache最新的工作模式,它和worker模式很像,不同的是在于它解决了keep-alive长连接的时候占用线程资源被浪费的问题
2.event工作模式在遇到某些不兼容的模块时,会失效,将会回退到worker模式
3.event工作模式需要Linux系统(Linux 2.6+)对epoll的支持,才能启用。需要补充的是HTTPS的连接(SSL)
4.在event工作模式中,会有一些专门的线程用来管理这些keep-alive类型的线程
5.当有真实请求过来的时候,将请求传递给服务器的线程执行完毕后,又允许它释放
6.这样, 一个线程就能处理几个请求了 ,实现了 异步非阻塞。这增强了在高并发场景下的请求处理
event参数讲解
在httpd-mpm.conf配置文件中,以下是prefork模块的定义
<IfModule mpm_event_module>
StartServers 3
MinSpareThreads 75
MaxSpareThreads 250
ThreadsPerChild 25
MaxRequestWorkers 400
MaxConnectionsPerChild 0
</IfModule>
参数说明
event优化建议
1.可根据生产环境进行调试,以确定合适参数
2.优化参考
<IfModule mpm event module>
ServerLimit 1000
StartServers 20
MinSpareThreads 25
MaxSpareThreads 1200
ThreadsPerChild 50
MaxRequestWorkers 2000
MaxC onnectionsPerChild 1000
</IfModule>
prefork工作模式介绍
prefork参数讲解
在httpd-mpm.conf配置文件中,以下是prefork模块的定义
<IfModule mpm_ prefork module>
StartServers 20
MinSpareServers 10
MaxSpareServers 50
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
参数说明:
prefork优化建议
1.可根据生产环境进行调试,以确定合适参数
2.优化参考
<IfModule mpm prefork module>
ServerLimit 1000
StartServers 10
MinSpareServers 10
MaxSpareServers 30
MaxClients 1000
MaxRequestsPerChild 5000
</IfModule>
worker工作方式
Apache目录属性
目录属性参数:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。