首页 > 网站 > Apache > 正文

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

2024-08-27 18:28:59
字体:
来源:转载
供稿:网友

一天两万个请求确实不大,但如果在高峰时期出现,而晚间或其它时间没有,呈正态分布,且均是需要时间的下载服务,那负载还是很大的。

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
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表