Linux Apache服务器系统的设置与优化(3)
来源:asp之家 时间:2010-05-07 18:07:00
因此就可以使用参数MinSpareServers来设置最少的空余子进程数量, 以及使用参数MaxSpareServers 来限制最多的空闲子进程数量,多余的服务器进程副本就会退出。根据服务器的实际情况来进行设置,如果服务器性能较高,并且也被频繁访问,就应该增大这两个参数的设置。对于高负载的专业网站,这两个值应该大致相同,并且等同于系统支持的最多服务器副本数量,也减少不必要的副本退出。
比如,当系统高负载时,可以这样检测:
[iaspec@www iaspec]$ ps -ef|grep apache|wc
55 .. ..
[iaspec@www iaspec]$
这表明,高负载时有55个运行子进程,如果此服务器为WEB专用服务器,就应该考虑将这两个数值分别设为50、60,或者40、70,具体以速度测试结果为准。
StartServers 5
StartServers参数就是用来设置httpd启动时启动的子进程副本数量,这个参数与上面定义的MinSpareServers和 MaxSpareServers参数相关,都是用于启动空闲子进程以提高服务器的反应速度的。这个参数应该设置为前两个值之间的一个数值,小于 MinSpareServers和大于MaxSpareServers都没有意义。
MaxClients 150
在另一方面,服务器的能力毕竟是有限的,不可能同时处理无限多的连接请求,因此参数Maxclients就用于规定服务器支持的最多并发访问的客户数,如果这个值设置得过大,系统在繁忙时不得不在过多的进程之间进行切换来为太多的客户进行服务,这样对每个客户的反应就会减慢,并降低了整体的效率。如果这个值设置的较小,那么系统繁忙时就会拒绝一些客户的连接请求。当服务器性能较高时,就可以适当增加这个值的设置。对于专业网站,应该使用提高服务器效率的策略,因此这个参数不能超过硬件本身的限制,如果频繁出现拒绝访问现象,就说明需要升级服务器硬件了。当不太在意对客户浏览器的反应速度,或者认为反应速度较慢也比拒绝连接好,就也可以略微超过硬件条件来设置这个参数。
但具体这个数值以多少为宜呢?当对性能要求较高时,可以用下面的方法确定如何配置此参数。
首先,估计你的最大可能并发的连接数,或者在高负载时用ps -ef|grep apache|wc命令测得最大进程数,通常MaxClients应该是这个数值的两倍左右。如果当前网站在高负载时的访问速度可以接受,但有拒绝服务现象,则应把此参数调大,如果无拒绝服务现象,但访问速度缓慢,则应减低此数值。
这个参数同时限制了MinSpareServers和MaxSpareServers的设置,它们不应该大于这个参数的设置。
对于重负载的机器来说,仅仅这么做还是不够的。