work模式即是多线程多进程模式,在进程数较多时 使用该模式 但是该模式没有prefork速度快
一旦一个进程的线程出现问题,那么该进程也有可能出现问题
work模式需要apache重新编译
./configure --prefix=/usr/local/myapache --with-apx=....... --with-mpm=work
这样编译就会切换到work模式
当然因为php是编译成apache的模块
那么就需要重新编译php 不用变化其中的参数,只需重新编译即可!
work模式的参数:
1,startservers 20 起始状态生成多少个进程
2,MinSpareThreads 50 最小空闲进程
3,Max...... 200 最大空闲进程
4,ServerLimit 50进程数上限 最大2W
5,MaxRequestWorkers 5000 允许同时连入的请求数,超过将排队
6,ThreadsPerChild 100 每个进程包含多少个线程 独立处理请求
7,ThreadsLimit 200 限制每个进程最多生成200个线程
8, MaxConnectionsPerChild 1000 一个进程一共接受过1000次请求之后被杀死,已释放内存
9,ServerLimit* ThreadsPerChild >= MaxRequestWorkers
MaxRequestWorkers必须是ThreadsPerChild的整数倍