Apache的fork模式和worker模式判断方法

 更新时间:2015年07月06日 11:11:06   投稿:goldensun  
这篇文章主要介绍了Apache的fork模式和worker模式判断方法,文中给出的方法基于http,需要的朋友可以参考下

本文章来给各位同学介绍判断apache的工作模式是prefork模式还是worker模式,测试方法我们只要使用http来操作。

apache常用的工作模式有prefork和worker模式。运行命令httpd -l 或者apache2 -l ,输出的结果中如果含有prefork.c,那就是prefork模式,如果结果中含有worker.c,那就是worker模式。

知道模式之后我们可以在apache的confextrahttpd-mpm.conf 进行编辑了

#
# Server-Pool Management (MPM specific)
#

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
#
# Note that this is the default PidFile for most MPMs.
#
<IfModule !mpm_netware_module>
  PidFile "logs/httpd.pid"
</IfModule>

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
<IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>
LockFile "logs/accept.lock"
</IfModule>
</IfModule>

#
# Only one of the below sections will be relevant on your
# installed httpd. Use "apachectl -l" to find out the
# active mpm.
#

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
  StartServers     5
  MinSpareServers    5
  MaxSpareServers   10
  MaxClients     150
  MaxRequestsPerChild  0
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
  StartServers     2
  MaxClients     150
  MinSpareThreads   25
  MaxSpareThreads   75
  ThreadsPerChild   25
  MaxRequestsPerChild  0
</IfModule>

# BeOS MPM
# StartThreads: how many threads do we initially spawn?
# MaxClients:  max number of threads we can have (1 thread == 1 client)
# MaxRequestsPerThread: maximum number of requests each thread will process
<IfModule mpm_beos_module>
  StartThreads      10
  MaxClients       50
  MaxRequestsPerThread 10000
</IfModule>

# NetWare MPM
# ThreadStackSize: Stack size allocated for each worker thread
# StartThreads: Number of worker threads launched at server startup
# MinSpareThreads: Minimum number of idle threads, to handle request spikes
# MaxSpareThreads: Maximum number of idle threads
# MaxThreads: Maximum number of worker threads alive at the same time
# MaxRequestsPerChild: Maximum number of requests a thread serves. It is
#           recommended that the default value of 0 be set for this
#           directive on NetWare. This will allow the thread to
#           continue to service requests indefinitely.             
<IfModule mpm_netware_module>
  ThreadStackSize   65536
  StartThreads      250
  MinSpareThreads     25
  MaxSpareThreads    250
  MaxThreads      1000
  MaxRequestsPerChild   0
  MaxMemFree       100
</IfModule>

# OS/2 MPM
# StartServers: Number of server processes to maintain
# MinSpareThreads: Minimum number of idle threads per process,
#         to handle request spikes
# MaxSpareThreads: Maximum number of idle threads per process
# MaxRequestsPerChild: Maximum number of connections per server process
<IfModule mpm_mpmt_os2_module>
  StartServers      2
  MinSpareThreads    5
  MaxSpareThreads    10
  MaxRequestsPerChild  0
</IfModule>

# WinNT MPM
# ThreadsPerChild: constant number of worker threads in the server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_winnt_module>
  ThreadsPerChild   150
  MaxRequestsPerChild  0
</IfModule>

我们如果是windows系统一般是使用最后面的winnt mpm来操作了。

相关文章

  • centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的方法

    centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的方法

    这篇文章主要介绍了centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的方法,较为详细的讲述了centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的具体步骤与相关设置技巧,需要的朋友可以参考下
    2018-01-01
  • CentOS7yum安装PHP7.2的操作方法

    CentOS7yum安装PHP7.2的操作方法

    下面小编就为大家分享一篇CentOS7yum安装PHP7.2的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • win10+Ubuntu 20.04 LTS双系统安装(UEFI + GPT)(图文,多图预警)

    win10+Ubuntu 20.04 LTS双系统安装(UEFI + GPT)(图文,多图预警)

    这篇文章主要介绍了win10+Ubuntu 20.04 LTS双系统安装(UEFI + GPT)(图文,多图预警),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 在linux服务器上安装Jenkins

    在linux服务器上安装Jenkins

    Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用。本章教大家如何在linux服务器上安装Jenkins。
    2017-05-05
  • Linux中的iptables防火墙

    Linux中的iptables防火墙

    iptables防火墙由netfilter和iptables组成,其中netfilter是内核态的数据包过滤系统,iptables是用户态的防火墙管理程序,iptables包含raw、mangle、nat和filter四个规则表,以及INPUT、OUTPUT、FORWARD、PREROUTING和POSTROUTING五个规则链
    2024-09-09
  • 详解CentOS下Nginx如何禁止IP访问

    详解CentOS下Nginx如何禁止IP访问

    服务器的安全相信是每位运维人员最关心的问题,不知道大家在使用的时候会不会遇到很多的恶意IP攻击,最近公司的服务器就遇到了这个问题,这个时候就要用到Nginx 禁止IP访问了。本文介绍了详细的步骤,有同样问题的朋友们可以参考学习。
    2016-10-10
  • linux命令实现音频格式转换和拼接的方法

    linux命令实现音频格式转换和拼接的方法

    今天小编就为大家分享一篇linux命令实现音频格式转换和拼接的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Linux inotify实时备份实现方法详解

    Linux inotify实时备份实现方法详解

    这篇文章主要介绍了Linux inotify实时备份实现方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • 在 Ubuntu 16.04 为 Nginx 服务器安装 LEMP 环境(MariaDB,PHP 7 并支持 HTTP 2.0)

    在 Ubuntu 16.04 为 Nginx 服务器安装 LEMP 环境(MariaDB,PHP 7 并支持 HTTP

    LEMP 是个缩写,代表一组软件包(L:Linux OS,E:Nginx 网络服务器,M:MySQL/MariaDB 数据库和 P:PHP 服务端动态编程语言),它被用来搭建动态的网络应用和网页
    2016-09-09
  • Linux修改文件句柄数方式及vm.max_map_count、stack size的大小

    Linux修改文件句柄数方式及vm.max_map_count、stack size的大小

    修改/etc/security/limits.conf文件可以调整Linux系统的文件句柄数、进程数等资源限制,需注意的是,对该文件的更改需要重新登录系统才能生效,如需临时修改,可以使用命令直接设置;永久修改则需编辑配置文件,设置nofile的最大值不应超过1048576
    2024-10-10

最新评论