你好,游客 登录 注册 搜索
背景:
阅读新闻

Apache的Multipath processing Modules (多路处理模块)

[日期:2017-04-14] 来源:Linux社区  作者:chentianwang [字体: ]

Apache的Multipath processing Modules (多路处理模块)

 (1)prefork:多进程模型,每个进程响应一个请求;
  一个主进程:负责生成子进程及回收子进程;负责创建套接字;负责接收请求,并将其派发给某子进程进行处理;
      n个子进程:每个子进程处理一个请求;
      工作模型:会预先生成几个空闲进程,随时等待用于响应用户请求;最大空闲和最小空闲;
    (2)worker:多进程多线程模型,每线程处理一个用户请求;
      一个主进程:负责生成子进程;负责创建套接字;负责接收请求,并将其派发给某子进程进行处理;
      多个子进程:每个子进程负责生成多个线程;
      每个线程:负责响应用户请求;
      并发响应数量:m*n
            m:子进程数量
      n:每个子进程所能创建的最大线程数量;
    (3)event:事件驱动模型,多进程模型,每个进程响应多个请求;
    一个主进程 :负责生成子进程;负责创建套接字;负责接收请求,并将其派发给某子进程进行处理;
    子进程:基于事件驱动机制直接响应多个请求;
      httpd-2.2: 仍为测试使用模型;
      httpd-2.4:event可生产环境中使用;

httpd-2.2不支持同时编译多个MPM模块,所以只能编译选定要使用的那个;CentOS 6的rpm包为此专门提供了三个应用程序文件,httpd(prefork), httpd.worker, httpd.event,分别用于实现对不同的MPM机制的支持;确认现在使用的是哪下程序文件的方法:
ps  aux  | grep httpd
默认使用的为/usr/sbin/httpd,其为prefork的MPM模块 ;
查看httpd程序的模块列表:
查看静态编译的模块:
# httpd  -l
查看静态编译及动态编译的模块:
# httpd  -M

更换使用httpd程序,以支持其它MPM机制;
vim /etc/sysconfig/httpd
HTTPD=/usr/sbin/httpd.{worker,event}

注意:重启服务进程方可生效

MPM配置:/etc/httpd/conf/httpd.conf
prefork的配置
<IfModule prefork.c>
StartServers      8 # 服务器刚启动是就启动多少个空闲进程
MinSpareServers    5 # 最小空闲进程数
MaxSpareServers  20 # 最大空闲进程数
ServerLimit      256 # 最大启动多少个进程
MaxClients      256 # 最大启动多少个进程响应客户端请求。最大并发数
MaxRequestsPerChild  4000 # 每个进程最多可以处理多少个请求,达到4000个就销毁一个进程
</IfModule>

worker的配置:
<IfModule worker.c>
StartServers        4 # 服务器刚启动是就启动多少个空闲进程
MaxClients        300 # 最大启动多少个进程响应客户端请求。最大并发数
MinSpareThreads    25 # 最小空闲进程数
MaxSpareThreads    75 # 最大空闲进程数
ThreadsPerChild    25 # 每个进程最大可生成多少个线程
MaxRequestsPerChild  0 # 进程处理的请求数量不受限制
</IfModule>

PV:Page View:日点击量,有多少个页面被点击。

CentOS6.8编译安装Apache2.4.25、MySQL5.7.16、PHP5.6.29  http://www.linuxidc.com/Linux/2016-12/138993.htm

CentOS 6.6下安装Apache 2.2.31 http://www.linuxidc.com/Linux/2017-02/140803.htm

Apache 配置多站点访问及二级域名配置  http://www.linuxidc.com/Linux/2017-03/141339.htm

Ubuntu 16.04 LTS安装Apache2+PHP7.0+MySQL+phpMyAdmin图文详解  http://www.linuxidc.com/Linux/2017-02/140098.htm

Apache 配置 https  http://www.linuxidc.com/Linux/2017-02/140801.htm

Linux下Apache安装及实例  http://www.linuxidc.com/Linux/2017-02/140800.htm

Apache2.4.6服务器安装及配置  http://www.linuxidc.com/Linux/2017-01/140006.htm

Ubuntu 16.04下搭建Web服务器(MySQL+PHP+Apache) 教程  http://www.linuxidc.com/Linux/2017-01/139570.htm

CentOS 7下 Apache 2.4.18编译安装详解  http://www.linuxidc.com/Linux/2017-03/142003.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-04/142773.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款