动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   服务器 → 阅读文章

 优化Apache服务器的重负荷

作者来源:天极网 
阅读 数 417 人次 , 2006-2-15 18:08:00 

 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

  
 本文Tags优化  apache  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:用反向代理技术保护Web服务器(3)
· 下一篇:Apache服务器的保护(1)
· Cluster之架设(NAT形式)(1)
· windows远程桌面端口修改
· Linux中文化简述
· 关闭任务管理器杀不了的进程
· 在Win 2003环境中设置一个Web服务器


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077