centos学习:探一探apache工作模式之prefork worker event
来源:互联网 发布:淘宝推广能做运营么 编辑:程序博客网 时间:2024/06/08 03:01
回顾:如果使用的apachectl这个工具来运行,那么它的配置文件在/usr/local/你的目录/conf/httpd.conf文件里执行 ps -ef | grep httpd 会发现默认出现四个进程。这是为什么?
Apache的启动方式有两种,一种是直接执行httpd这个可执行程序(但是不好控制,不推荐)
还有一种是使用apachectl (apache贴心管理小工具)
如果你启动的是/usr/local/xxxx/bin/apachectl,
那么 执行 apachectl -l (小写的l)
如果你和本课程是一样的配置,那么会出现
一条:
event.c 代表 event模式
三种工作模式 – prefork
apache 2.2默认的模式。没有线程的概念,是多进程模型,一个进程处理一个连接;稳定;响应快。其缺点是在连接数比较大时就非常消耗内存。
2.2中编译时不加–with-mpm=xxx 那么就是prefork
2.4中 则是 event工作模式三种工作模式–worker
多进程多线程模型,一个进程有多个线程,每个线程处理一个连接。这种模式下开销更小,处理的请求更海量。
缺点是一旦某个线程出了问题,其所属进程也可能会死掉三种工作模式–event
Worker模式的升级和加强版本.相对worker模式能够承受的了更高的并发负载。
event模式不能很好的支持https的访问
回到上节课我们的apache源码目录里
./configure –prefix=/usr/local/myapache –enable-MODULE=shared –with-mpm=prefork
重新生成makefile文件
再次make && make install
找到这一行
Include conf/extra/httpd-mpm.conf
这个额外加载的配置文件,就是对不同工作模式的一个配置。为了方便区分,所以会放到外面。当然你也可以直接拉过来放到里面
StartServers 5 //初始创建进程数
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 250
MaxConnectionsPerChild 0
StartServers //初始创建进程数
MaxSpareServers 最大空闲进程数,如果空闲进程数大于这个值,Apache会自动kill掉一些多余进程
MinSpareServers 最小空闲进程数
MaxRequestWorkers
最大接收的请求数,apache 2.3.1之前叫做MaxClients.
默认值256(250?).调大这个值要增加ServerLimit (最大为2万,要调这个值要改源码文件)
http://httpd.apache.org/docs/current/mod/mpm_common.html#serverlimit
MaxRequestsPerChild(2.4为MaxConnectionsPerChild)
每个子进程可处理的请求数。每个子进程在处理了“MaxRequestsPerChild”个请求后将自动销毁
0为不限制
- centos学习:探一探apache工作模式之prefork worker event
- Apache 的三种工作模式(Prefork、Worker、Event)
- apache工作模式:prefork和worker
- apache工作模式:prefork和worker
- apache工作模式:prefork和worker
- Apache Prefork、Worker和Event三种MPM工作模式分析
- Apache worker/prefork模式
- Apache的三种MPM模式比较:prefork,worker,event
- Apache的三种MPM模式比较:prefork,worker,event
- Apache的三种MPM模式比较:prefork,worker,event
- [转贴]apache的prefork和worker工作模式
- Apache工作模式prefork和worker的比较
- Apache工作模式prefork和worker的比较
- apache的工作模式prefork和worker理解
- Apache的工作模式prefork & worker简单分析
- apache常用的两种工作模式prefork和worker
- apache的工作模式--prefork和event模式
- Apache的prefork模式和worker模式
- 13期 7月期刊自荐
- mysql5.6的配置优化my.cnf
- 文件上传
- 【每天一点Linux】Linux下进度条的实现
- 十六、性能优化
- centos学习:探一探apache工作模式之prefork worker event
- java实现位图排序算法《编程珠玑》第一章笔记
- iOS中文参数的URL地址URLEncode转码
- #随手记#fastjson 解析数据
- 十七、不使用ES6编写React应用
- 多表不连表处理方法,数据为多选数据处理方法
- solr6.6 了解managed-schema
- 十八、不使用JSX编写React应用
- nio 1