免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6923 | 回复: 17
打印 上一主题 下一主题

[Web] 求救:web服务器不堪重负 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-05-22 20:47 |只看该作者 |倒序浏览
尊敬的法王,你好,我服务器上只放了一个小站点,pv不过10-15万左右都是静态的,但是服务器cpu一直在50%左右,很卡的感觉,带宽很充足,服务器硬件配置:dell 2950 cpu:5410 内存:1G 硬盘:146sas 1万5k转,系统为windows2003 装的是apache2.2+mysql5.0+zend(忘记几点几版本好像是官方推荐的),人多点系统就感觉很卡,我该怎么办?我是个新手,对于服务器不懂,以前站点放在虚拟主机上都还好,只是这段时间四川地震了,那边虚拟主机坏掉了(在绵阳重灾区),不得不移到独立服务器上来,怎么感觉还不如那个空间商的虚拟主机强(他一个服务器上近200多个站点,有好几个流量都是好几万的,但稳定的很,配置还是P4双核的),我很纳闷,没有道理啊!有点想把网站转回到空间上去,请求指点!我是不是该换系统?四川那主机是Linux的,我现在装的是win2003,是不是系统效率不高啊!导致负载不行?谢谢!
附件为完整的配置文件。

httpd.rar

6.3 KB, 下载次数: 43

httpd-mpm.rar

1.14 KB, 下载次数: 58

论坛徽章:
0
2 [报告]
发表于 2008-05-23 08:18 |只看该作者
1.置上来看,好像你的apache的mpm配置不够好.

2.httpd-mpm.conf
告诉我一下.你的apache的mpm模式.


3.mpm查看方式:
[root@u tools]# apachectl -lCompiled in modules:
  core.c
  mod_access.c
  mod_auth.c
  mod_include.c
  mod_log_config.c
  mod_env.c
  mod_setenvif.c
  worker.c
  http_core.c
  mod_mime.c
  mod_status.c
  mod_autoindex.c
  mod_asis.c
  mod_cgid.c
  mod_vhost_alias.c
  mod_negotiation.c
  mod_dir.c
  mod_imap.c
  mod_actions.c
  mod_userdir.c
  mod_alias.c
  mod_rewrite.c
  mod_so.c

论坛徽章:
0
3 [报告]
发表于 2008-05-23 14:30 |只看该作者
感谢你的回复,我是windows主机,默认的安装,我没有配置mpm啊!我按照你的方法查询下,谢谢你!

论坛徽章:
0
4 [报告]
发表于 2008-05-23 14:34 |只看该作者
在windows 下怎么查看mpm方式??

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-09-29 06:20:00
5 [报告]
发表于 2008-05-26 13:06 |只看该作者
默认状态下mpm应该是perfork模式


在httpd-mpm.conf的配置中:

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

更改一下,如下:

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    ServerLimit          1000
    MaxClients          1000
    MaxRequestsPerChild   0
</IfModule>

看看还卡不卡

具体的参数意义请查看官方文档,解释太麻烦了

还一个地方

httpd-default.conf

有个MaxKeepAliveRequests  的参数,
把那个值改大一点,比如1000或者10000都可用
当然要在httpd.conf中把那个配置文件包含进来

论坛徽章:
0
6 [报告]
发表于 2008-05-27 01:25 |只看该作者
谢谢 我尝试下

论坛徽章:
0
7 [报告]
发表于 2008-05-27 09:18 |只看该作者
不得了 按上面我网站进入跟蜗牛一样慢啊!!今天差点瘫痪 昨天流量达到20万 今天时段分析少了一半啊!

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-09-29 06:20:00
8 [报告]
发表于 2008-05-27 10:33 |只看该作者
那就再大一点

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       10
    MaxSpareServers      20
    ServerLimit          50000
    MaxClients          50000
    MaxRequestsPerChild   0
</IfModule>

MaxKeepAliveRequests=10000

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-09-29 06:20:00
9 [报告]
发表于 2008-05-27 11:11 |只看该作者
apache的配置没有固定的什么配置最好,是和机器本身性能有关的,因此重在调试,不防多改几次,建议仔细看下各个参数的意义,自己熟悉了解了就好办多了

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-09-29 06:20:00
10 [报告]
发表于 2008-05-27 11:17 |只看该作者
原帖由 tianya20000 于 2008-5-27 09:18 发表
不得了 按上面我网站进入跟蜗牛一样慢啊!!今天差点瘫痪 昨天流量达到20万 今天时段分析少了一半啊!



先把参数扩大一倍:

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       10
    MaxSpareServers      20
    ServerLimit          2000
    MaxClients          2000
    MaxRequestsPerChild   0
</IfModule>

如果和以前没有改动过差不多了,就差不多了,看看CPU和内存,在高峰时段还没有满,就再增大一点,比如:

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       10
    MaxSpareServers      20
    ServerLimit          5000
    MaxClients          5000
    MaxRequestsPerChild   0
</IfModule>

如果还有其它的任务要干,比如晚上要有其它的程序运行,就更改成如下的模式:

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       10
    MaxSpareServers      20
    ServerLimit          5000
    MaxClients          5000
    MaxRequestsPerChild   10000
</IfModule>

MaxRequestsPerChild   10000代表apache的每个线程在处理完10000个请求后,就自动销毁,这样晚上就可以释放出系统资源供其它程序使用,但也不能太频繁了,要知道apache启动新线程和销毁线程都是耗费资源的,也不能太小了,10000还是比较合适的

祝你好运
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP