当前位置: 首页 > 图文教程 > 服务器 > Web服务器 > 优化Apache服务器的重负荷

Web服务器
用WebEasyMail架构Web邮件服务器(7)
用WebEasyMail架构Web邮件服务器(8)
Webmail攻防实战(1)
Webmail攻防实战(2)
Webmail攻防实战(3)
Webmail攻防实战(4)
Webmail攻防实战(5)
Webmail攻防实战(6)
Webmail攻防实战(7)
Webmail攻防实战(8)
QMAIL+MH设计方案(1)
QMAIL+MH设计方案(2)
QMAIL+MH设计方案(3)
QMAIL+MH设计方案(4)
QMAIL+MH设计方案(5)
QMAIL+MH设计方案(6)
QMAIL+MH设计方案(7)
QMAIL+MH设计方案(8)
QMAIL+MH设计方案(9)
Qmail系统下防止滥用mail relay方案(1)

Web服务器 中的 优化Apache服务器的重负荷


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 48 ::
收藏到网摘: n/a

Apache在一天两万个请求确实不大,但如果在高峰时期出现,而晚间或其它时间没有,呈正态分布,且均是需要时间的下载服务,那负载还是很大的。

Apache允许为请求开的最大进程数是256,MaxClients的限制是256.如果用户多了,用户就只能看到Waitingforreply....然后等到下一个可用进程的出现。这个最大数,是Apache的程序决定的--它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中看到:
  

  
你可以把它调到1024,然后再编译你的系统。记得在httpd.conf里也要更改相应配置,缺省好象是150。就下面的机器来说,调到512顶死了,如果再高,系统受不了。

另外,一些系统也限制了一个用户的最大进程数。你可以用ulimit-u来看。Linux一般是256。因此你要真想让Apache超过这个数,就得调整这个参数:

ulimit-uunlimited

这个参数要在Apache运行之前修改,因此建议加到apachectl里:
  

以下为引用的内容:
  case$ARGin
  start)
  if[$RUNNING-eq1];then
  echo"$0$ARG:httpd(pid$PID)alreadyrunning"
  continue
  改成
  case$ARGin
  start)
  ulimit-uunlimited
  if[$RUNNING-eq1];then
  echo"$0$ARG:httpd(pid$PID)alreadyrunning"
  continue