当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Apache重负荷服务器应如何优化

Linux服务器
Apache2的httpd.conf翻译
全面提高Ubuntu Linux操作系统运行速度
Linux搭建Discuz论坛的方法
Linux系统下usr的目录结构
系统管理工具包: 通过 OpenSSH 设置 UNIX 远程访问
Linux系统下将CHM格式文件转换为HTML
Linux和Windows系统线程间的区别
Apache服务器实现的用户验证
Apache并发请求数及其TCP连接状态查看的方法
关闭Linux系统下不必要的服务
Linux操作系统的基本用户环境
Linux系统用Qpopper建立POP3服务器
基于Unix系统的Web服务器安全指南
全面提升Linux服务器的安全
Samba服务器的搭建与配置
Linux硬件兼容性问题将被终结?
Linux下查看内存的命令Free
优化 Apache 的几个实用技巧
linux高负载下彻底优化mysql数据库
Apache HTTP Server畸形HTTP方式413漏洞

Linux服务器 中的 Apache重负荷服务器应如何优化


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


  一天两万个请求确实不大,但如果在高峰时期出现,而晚间或其它时间没有,呈正态分布,且均是需要时间的下载服务,那负载还是很大的。
  
  Apache允许为请求开的最大进程数是256,MaxClients的限制是256.如果用户多了,用户就只能看到Waitingforreply....然后等到下一个可用进程的出现。这个最大数,是Apache的程序决定的--它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中
  看到:
  #ifndefHARD_SERVER_LIMIT
  #ifdefWIN32
  #defineHARD_SERVER_LIMIT1024
  #else
  #defineHARD_SERVER_LIMIT256
  #endif
  #endif
  你可以把它调到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