2007-05-17

优化Apache服务器的重负荷

来源: 本站收集整理 作者:佚名 评论 0 条
  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 © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号