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来操作了。

相关文章

  • 详解如何在Ubuntu上检查、开启、关闭端口

    详解如何在Ubuntu上检查、开启、关闭端口

    在深入探讨如何在Ubuntu上检查、开启、关闭端口之前,理解网络基础概念、端口的工作原理以及Ubuntu的网络架构是至关重要的,文中通过代码示例介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-06-06
  • 系统讲解Apache Kafka消息管理与异常处理的最佳实践

    系统讲解Apache Kafka消息管理与异常处理的最佳实践

    Apache Kafka 作为分布式流处理平台的核心组件,广泛应用于实时数据管道、日志聚合和事件驱动架构,下面我们就来系统讲解 Kafka 消息管理与异常处理的最佳实践吧
    2025-04-04
  • Linux之CRLF/CR/LF等回车换行符的问题

    Linux之CRLF/CR/LF等回车换行符的问题

    这篇文章主要介绍了Linux之CRLF/CR/LF等回车换行符的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • linux给用户添加root权限方法总结

    linux给用户添加root权限方法总结

    在本篇文章里小编给大家整理的是关于
    2020-02-02
  • Apache Iceberg 底层数据查询原理解析

    Apache Iceberg 底层数据查询原理解析

    Apache Iceberg是一个开源表格格式,用于大型分析数据集,本文主要介绍了如何通过快照、Manifest文件和元数据文件查询Iceberg表的数据,通过解析元数据文件获取当前表的快照ID,进而读取对应的Avro文件和Manifest文件中的Parquet数据文件,感兴趣的朋友一起看看吧
    2024-09-09
  • 在CentOS 7.2上安装SuPHP的详细方法

    在CentOS 7.2上安装SuPHP的详细方法

    这篇文章主要介绍了在CentOS 7.2上安装SuPHP的详细方法,本教程介绍从源代码安装CentOS 7.2上的SuPHP,因为没有可用于CentOS 7.2的SuPHP软件包,需要的朋友可以参考下
    2020-02-02
  • .htaccess rewrite 规则详细说明

    .htaccess rewrite 规则详细说明

    用Apache虚拟主机的朋友很多,apache提供的.htaccess模块可以为每个虚拟主机设定rewrite规则,这对网站SEO优化相当有用,同时也改善了用户体验
    2016-04-04
  • linux系统中rsync+inotify实现服务器之间文件实时同步

    linux系统中rsync+inotify实现服务器之间文件实时同步

    这篇文章主要介绍了rsync+inotify实现服务器之间文件实时同步,需要的朋友可以参考下
    2014-11-11
  • Linux unlink函数和删除文件的操作方法

    Linux unlink函数和删除文件的操作方法

    这篇文章主要介绍了Linux unlink函数和删除文件的操作方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • sersync2完全安装配置说明(一) 基本功能使用

    sersync2完全安装配置说明(一) 基本功能使用

    当前版本的sersync依赖于rsync进行同步。如下图所示,在同步主服务器上开启sersync,将监控路径中的文件同步到目标服务器,因此需要在主服务器配置sersync,在同步目标服务器配置rsync
    2011-11-11

最新评论