linux apache 查看mpm 配置方式,Apache MPM模块prefork和worker的区别与配置

在httpd 2.2版本中是不支持同时编译多个MPM模块的,只能编译要使用的那个,默认是prefork工作模型,另外还有worker和event模块可使用,只不过在2.2中event还在测试阶段,到2.4才正式使用,所以本文所讲是httpd 2.2中的worker和prefork模块

如何查看Apache当前工作模块:

1、查看静态编译的模块:httpd -l

974c7e2cc298516eb58a08c064ab2da1.png

2、查看静态及动态编译的模块:httpd -M

prefork和worker的区别:

prefork是非线程、多进程处理模块。

prefork会预先生成一些子进程,每个进程在同一个时间点只能处理一个请求,会根据并发需求生成更多进程来完成工作。消耗内存资源更大,但是更为高效稳定。

worker是线程化、多进程处理模块。

每个进程生成多个线程,每个线程响应一个请求,内存资源消耗小,效率没有prefork高,但是现在内存资源已经很充足,所以worker模块使用较少。

如何切换MPM模块:

1、httpd2.2版本修改MPM模块的方法:

(1)、首先使用httpd -l来查看当前模块是prefork,使用 ps aux 查看httpd进程也可以得知。

(2)、编辑/etc/sysconfig/httpd文件,取消以下一行的注释,修改为所需要MPM模块。

HTTPD=/usr/sbin/httpd.worker

(3)、重新启动httpd服务,使用ps aux命令查看当前进程,可以看到修改已经生效了。

2、httpd2.4版本修改MPM模块的方法

在编译安装httpd2.4时,构建MPM模块通常有两种选择,一种是把MPM编译成静态模块,还有一种是把MPM编译成动态模块。如果把MPM编译成了静态模块(编译安装时有指定--with-mpm=NAME),那么要改变MPM只能通过重新编译安装httpd修改。如果在编译安装httpd时把MPM编译成了动态模块(编译安装时指定--enable-mpms-shared选项),那么可以在/etc/httpd/httpd.conf配置文件中编辑LoadModule指令选择不同的MPM重新载入即可。在httpd2.4中MPM模块的配置文件为/etc/httpd/extra/httpd-mpm.conf。

三种模块参数说明:

httpd2.2中prefork和worker各参数说明如下:

如果prefork.c模块存在,则定义在标签内的参数有效

StartServers: 服务开启时默认启动的工作进程数,不包括主进程

MinSpareServers: 最少空闲进程数;

MaxSpareServers: 最大空闲进程数;

ServerLimit: 最大活动进程数;

MaxClients: 并发请求的最大数,一条进程最多能处理多少个请求

MaxRequestsPerClient: 每个子进程在生命周期内所能够服务的最多请求个数

如果worker.c模块存在,则定义在标签内的参数有效

StartServers: 服务器开启时,启动的子进程的个数

MaxClients: 并发请求的最大数;

MinSpareThreads:最小空闲线程数;

MaxSpareThreads:最大空闲线程数;

ThreadsPerChild:每个子进程可生成的线程数;

MaxRequestsPerChild:每个子进程在生命周期内所能够服务的最多请求个数,0表示不限定;

httpd2.4中event参数说明如下:

StartServers 默认进程数

MinSpareThreads 最小空闲线程数

MaxSpareThreads 最大空闲线程数

ThreadsPerChild 每个子进程可以生成的线程数

MaxRequestWorkers 最大线程数量

MaxConnectionsPerChild 子进程的最大连接数,当达到设置值以后,APACHE就会结束当前的子进程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值