这篇配置说明是结合上一篇来进一步微调的。
 
具体配置如下
 
DocumentRoot "/downfile"
BandWidthModule On
ForceBandWidthModule On
<Location />
 MaxConnPerIP 1
</Location>
<Directory />
    Options FollowSymLinks
    AllowOverride None
    BandWidth    all 40960000
</Directory>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^[url]http://download.92wy.com.[/url]*$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://down.92wy.com.[/url]*$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://games.shangdu.com.[/url]*$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://game.shangdu.com.[/url]*$ [NC]
RewriteRule .*$ [url]http://download.92wy.com/err.asp[/url] [R,NC]
<Directory "/downfile">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
 
BandWidth    all 40960000  其实单位是字节,字面上意思是限速40兆,其实下载速率只有100K++ ,测试环境是晚上9:30-10:20 和早上12:00---2:40 这就奇怪了,难道是单位搞错了? 我根据限速的不同做了一个记录进行对比。
 
首先说明的是测试的时候,系统APACHE进程数在500左右~
第一次限速 2048000 2M的理论速度 在客户端下载的时候网际快车成波浪号呈现,速度最多是 5k-0k-5k..........
第二次限速 20480000 大胆的设置成20M 看看实际下载速度能有多少,等服务重启以后再测试速度达到56k-60k左右了
第三次限速 是根据前两次设置的速率来改的,将速度限制成为40960000 40M,在进程数达到500左右的时候,内存的消耗达到正常,cache数值没有那么高了,只有50M左右。对比一下top上关于内存的数值,你就可以发现限速没有做好是对机器最起消耗作用的。
这时候主下载服务器已经可以在晚上高峰期承接500个左右的用户的下载需求了,速度平均在100k-200k左右。我是机房直接做的测试,得到的数据应该不受太多带宽的影响。
 
下载服务器一直都是系统维护人员最头痛的东西,首先是容易挂,其次是经常更新和备份,最后是速度上不去网友们骂你。呵呵 第一次在机房发现下载时成波浪号曲线时还以为是系统的原因,结果检查了一边APACHE以后发现没有配置上的错误。最后就选择了尝试一下修改限速数值看看,最后发现了有一定比例关系的。可是当时在公司做实验的时候,在BandWidth上设置的数值确实可以正常限速,现在想想当时只考虑了下载时的上限速度并没有考虑到服务器承受过多压力以后的运行能力。
 
总结一下,好的下载服务器配置应该是可以考虑到超压情况下的用户下载速度上限设置和最低速度的保证!
 
以上只是我一点实际工作的感受,有什么不完善的地方欢迎及时给我提出批评!