积木首页 | 500多种网页特效 | 函数手册 | 广播电台 | 高清晰图片素材 | 服务器合租 | 万年历 | 网友最新浏览记录
程序开发 网页设计 搜索引擎 特效代码 操作系统 防范病毒 黑客技术 图形图象 电脑硬件 网络技术 服 务 器 数 据 库 网文精粹
您的位置:积木首页 >> 网络技术频道 >> Web服务器 >> 正文:
标题:优化Apache服务器的重负荷
时间:2006-5-15 来源:不详 浏览数:
Apache在一天两万个请求确实不大,但如果在高峰时期出现,而晚间或其它时间没有,呈正态分布,且均是需要时间的下载服务,那负载还是很大的。

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

  #ifndef HARD_SERVER_LIMIT
  #ifdef WIN32
  #define HARD_SERVER_LIMIT 1024
  #else
  #define HARD_SERVER_LIMIT 256
  #endif
  #endif

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

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

  ulimit -u unlimited

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

  case $ARG in
  start)
  if [ $RUNNING -eq 1 ]; then
  echo "$0 $ARG: httpd (pid $PID) already running"
  continue
  改成
  case $ARG in
  start)
  ulimit -u unlimited
  if [ $RUNNING -eq 1 ]; then
  echo "$0 $ARG: httpd (pid $PID) already running"
  continue


(责任编辑:欣欣裴)
关于本站 | 广告服务 | 联系我们 | 版权申明 | 强强联盟 | 投稿热线 | 网站地图 | 申请链接
Copyright ©2005-2006 Gimoo.net All rights reserved. 积木网 版权所有
E-mail:gimoohr@gmail.com 京ICP备05050695号