吾知网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1339|回复: 0

Apache性能优化、超时设置

[复制链接]
发表于 2017-12-22 18:02:51 | 显示全部楼层 |阅读模式
Apache性能优化、超时设置
xilongpei大约一年 之前添加
在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。
其中调节以下参数
Timeout 15 (连接超时缺省为300,太大了,缩小会减少同时连接数,即上面占用的实际线程数)
KeepAlive On (开启可以提高性能,因为一个页面一般会有多个请求)
MaxKeepAliveRequests 50 (这个数目自己根据网页内容调节)
KeepAliveTimeout 5 (这个小于Timeout就行)
-------------------------------------------
http://www.29ma.cn/20100518/87/
Apache性能优化、超时设置
1、Apache线程数和超时设置
Apache的线程数控制文件为conf/exrtra/http-mpm.conf,需要在httpd.conf中将 Include conf/extra/httpd-mpm.conf前#去掉,以使得http-mpm.conf生效。在Windows系统中,起作用的是Winnt mpm段,
<IfModule mpm_winnt_module>
ThreadsPerChild 150
MaxRequestsPerChild 0
</IfModule>
缺省的配置一般够用,但负荷大的网站就要修改了,否则网站一下就变慢或没有响应了。实际可以根据apache-status查看apache实时连接状态,我的服务器最后设置如下:
<IfModule mpm_winnt_module>
ThreadsPerChild 350
ThreadLimit 350
MaxRequestsPerChild 10000
Win32DisableAcceptEx
EnableMMAP Off
EnableSendfile Off
</IfModule>
其中ThreadLimit是占用系统线程数限制,最好加上,否则会产生内存溢出导致Apache当掉。MaxRequestsPerChild我理解是请求的缓存数,太小了影响性能,占用cpu时间,太大了占用内存资源,想象一下你网站的文件个数,然后自己设定,只要不为0就可以,防止内存溢出。ThreadsPerChlid是apache的线程数,就是开了这么多的线程来等待响应客户端请求,需要根据apache-status实时的监控调节,大了会占用过多内存,小了会导致连接不上。而且应该同时修改httpd-default.php超时设置来配合。在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。\\以前服务器开机首次访问时间很长,以后的首页也不快,改完这个首页明显快了
其中调节以下参数
Timeout 15 (连接超时缺省为300,太大了,缩小会减少同时连接数,即上面占用的实际线程数)
KeepAlive On (开启可以提高性能,因为一个页面一般会有多个请求)
MaxKeepAliveRequests 50 (这个数目自己根据网页内容调节)
KeepAliveTimeout 5 (这个小于Timeout就行)
Linux 下Apache重启等
如果是linux自己带的apache的话就使用命令
service httpd start 启动
service httpd stop 关闭
service httpd restart 重新启动
如果不是linux自带的apache,或者你的linux根本就没带,是你自己按在/usr/local的话。
进入/usr/local/bin下
cd /usr/local/bin
找到可执行文件执行它,具体你的可执行文件名字是什么我就不大清楚了,
不过肯定是apache开头的什么文件
比如是apache1
执行
./apache1




您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|吾知网 ( 粤ICP备13013563号-1 )

GMT+8, 2019-12-7 16:34 , Processed in 1.109375 second(s), 9 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表