zoukankan      html  css  js  c++  java
  • apache 修改连接数(转)

    1.先要修改最大连接数,必须了解Apache的MPM(Multi -Processing Modules,多道处理模块)
    Apache2.0中MPM分为3种(perfork、worker、event)。perfork从Apache1.3中继承下来的,它采用的是进程管 理方式,所以它可以提供更可靠的性能和更好的兼容性;worker是Apache2.0中新增加的方式,它采用了线程控制方法,可以比perfork更节 约系统开销、处理更多的数据量,但同时兼容性并不是很好,很多旧的程序无法工作在worker下;event仍处于试验阶段,它为每个任务分配不同的进程 池。
    查看方法:通过http -l查看你的apache采用的MPM
    通过http -l查看你的apache采用的MPM
    可以看到我的apache采用的就是prefork工作方法。
    2.配置prefork参数
    默认参数如下:
    <IfModule prefork.c>
    StartServers 8
    MinSpareServers 5
    MaxSpareServers 20
    MaxClients 150
    MaxRequestsPerChild 1000
    </IfModule>
    当Apache被启动时,Apache会自动创建StartServers个进程,并且尽力将空闲进程数保持在MinSpareServers和MaxSpareServers之间。
    如果空闲进程小于MinSpareServers,Apache将会以大约每秒1个的速度新建进程。
    如果空闲进程小于MaxSpareServers,Apache将会删除多余的空闲进程,释放服务器资源。
    进程数的最大值由MaxClients控制,在Apache1.3中最大只能设置为256,但在Apache2.0中,可以通过在配置开头增加ServerLimit项目来突破256的限制,此时必须MaxClients ≤ ServerLimit ≤ 20000
    MaxRequestsPerChild用来控制每个进程在处理了多少次请求之后自动销毁,这个参数可以设置为0表示无限(即不销毁进程)。
    我个人的配置如下:
    <IfModule prefork.c>
    StartServers       10
    MinSpareServers    10
    MaxSpareServers   15
    ServerLimit      4000
    MaxClients       2056
    MaxRequestsPerChild  10000
    </IfModule>
    重启Apache后生效
    3.关于apache最大连接数设置
    查看当前的连接数可以用:
    ps aux | grep httpd | wc -l

    或:
    pgrep httpd|wc -l

    计算httpd占用内存的平均数:
    ps aux|grep -v grep|awk ‘/httpd/{sum+=$6;n++};END{print sum/n}’

    静态页面,CPU消耗很低,每进程占用内存也不算多,大约200K。

    假如服务器内存有2G,除去常规启动的服务大约需要500M(保守估计),还剩1.5G可用,那么理论上可以支持1.5*1024*1024*1024/200000 = 8053.06368

    约8K个进程,支持2W人同时访问应该是没有问题的(能保证其中8K的人访问很快,其他的可能需要等待1、2秒才能连上,而一旦连上就会很流畅)

    转载地址: http://www.phpddt.com/server/apache-MaxClients.html

  • 相关阅读:
    大伯的八十岁寿辰
    收到 wincore.cpp 中一个 " ASSERT " BUG: 当 MFC 应用程序 Visual C++ 中 MFC 规则 DLL 中调用函数声明
    命名空间Microsoft.Office.Interop.Word不存在....
    中国测绘科学研究院招聘WEBGIS开发工程师与客座研究生
    开源GIS学习笔记 sinoly BLOGJAVA
    2007年7月9日星期一
    转载:使用感受: VC2005 VC6.0
    推荐:用ogr和PIL把矢量数据转化成栅格图像
    《赢在中国》感言
    VS2005的断点无效问题
  • 原文地址:https://www.cnblogs.com/aishangyizhihu/p/4838555.html
Copyright © 2011-2022 走看看