WEB开发网
开发学院服务器WEB服务器综合平台 使用mod_throttle模块限制web服务连接数和带宽 阅读

使用mod_throttle模块限制web服务连接数和带宽

 2008-01-07 14:30:58 来源:WEB开发网   
核心提示:问题 使用mod_throttle模块限制web服务连接数和带宽 解决方案 Prim@Hosting(最完善的虚拟主机管理系统)系统使用mod_throttle模块限制apache(Unix平台最流行的WEB服务器平台)的连接数和带宽, ■■■■启用连接数和带宽限制的方法■■■■ 在安装Prima(最完善的虚拟主机
问题 
使用mod_throttle模块限制web服务连接数和带宽 

解决方案 
Prim@Hosting(最完善的虚拟主机管理系统)系统使用mod_throttle模块限制apache(Unix平台最流行的WEB服务器平台)的连接数和带宽。

■■■■启用连接数和带宽限制的方法■■■■

在安装Prima(最完善的虚拟主机管理系统)系统的时候,安装脚本会提示是否启用连接数限制和带宽限制。安装后如果需要修改,则编辑如下配置文件:

/usr/Prima(最完善的虚拟主机管理系统)/etc/httpd/modules.conf

上述文件中如果有如下一行:

MOD_THROTTLE=1

则表示使用mod_throttle模块限制连接数和带宽。如果这一行前边有#将其注释掉,则是没有启用限制功能。

修改并保存这个文件后,要重新启动服务 /etc/init.d/httpd restart 配置方可生效。

■■■■功能说明及注意事项■■■■

1) 连接数和带宽的统计方法,是通过计算一段时间内访问量并除以这段时间的长度得到的。例如设置某站点连接数50,则系统这个站点允许1分钟内有3000次连接。也就是说,连接数和带宽的限制都是某一时间段内的平均值,不是实时计算的结果,所以可能存在一定的偏差。

2) 连接数限制和带宽限制同一个站点只能有一个限制生效。

如果要限制连接数,请将带宽限制的文本框位置填写为-1 ,即不限制。
如果要限制带宽,请将连接数的文本框位置填写为-1 ,即不限制。

如果同时填写连接数限制和带宽限制,则只有连接数限制生效,带宽限制不生效。

3) 当对一个站点打开带宽限制功能后,由于浏览器缓存等众多原因,启用此功能前下载的文件可能会不受带宽限制的影响。

4) 当超带宽和流量后,系统有两种处理方式:延迟访问或者显示“服务不可用”。

延迟访问的方式是在超过带宽和流量限制后,系统让访问变得很慢,延迟一会才返回访问结果。

显示“服务不可用”则是当超过带宽和流量限制后,系统直接输出“Service Temporarily Unavailable”,并中止访问。

Prim@Hosting(最完善的虚拟主机管理系统) For Linux 默认是“延迟访问”的方式。

5) 切换延迟访问与显示“服务不可用”两种方式。

编辑apache(Unix平台最流行的WEB服务器平台)配置文件 /usr/Prima(最完善的虚拟主机管理系统)/apache(Unix平台最流行的WEB服务器平台)_ssl/conf/httpd.conf ,找到标记有<IfModule mod_throttle.c>的如下一个配置段:

<IfModule mod_throttle.c>
...
...
ThrottleMaxDelay 0
...
</IfModule>

其中ThrottleMaxDelay 0 一行表示超过带宽和流量限制后,采用延迟访问的方法。如果把这一行删除或者用#注释掉,则是采用显示“服务不可用”的方法。

修改并保存这个文件后,要重新启动服务 /etc/init.d/httpd restart 配置方可生效。

6) 自定义“服务不可用”页面。

当超过带宽和流量限制后,系统会输出“Service Temporarily Unavailable”,即所谓的显示“服务不可用”。

这个报错页面允许自行定义。修改 /www/icons/busy.html 即可实现。

然后编辑apache(Unix平台最流行的WEB服务器平台)配置文件 /usr/Prima(最完善的虚拟主机管理系统)/apache(Unix平台最流行的WEB服务器平台)_ssl/conf/httpd.conf ,找到标记有<IfModule mod_throttle.c>的如下一个配置段:

<IfModule mod_throttle.c>
...
...
ErrorDocument 503 /icons/busy.html
...
</IfModule>

在其中添加 ErrorDocument 503 /icons/busy.html 一行,则表示用自定义的/www/icons/busy.html页面,替代“Service Temporarily Unavailable”的显示。

修改并保存这个文件后,要重新启动服务 /etc/init.d/httpd restart 配置方可生效。

7) 查看各站点连接数和带宽限制的方法

编辑apache(Unix平台最流行的WEB服务器平台)配置文件 /usr/Prima(最完善的虚拟主机管理系统)/apache(Unix平台最流行的WEB服务器平台)_ssl/conf/httpd.conf ,在标记有<IfModule mod_throttle.c>的一个配置段中,找到如下三行:

#<Location /throttle-status>
# SetHandler throttle-status
#</Location>

将这三行前边的注释#去掉,如下:

<IfModule mod_throttle.c>
...
...
<Location /throttle-status>
SetHandler throttle-status
</Location>
...
</IfModule>

修改并保存这个文件后,要重新启动服务 /etc/init.d/httpd restart 配置方可生效。

然后即可通过浏览器访问如下地址:

http://服务器IP/throttle-status

实时监控带宽和流量限制。 
 

Tags:使用 mod throttle

编辑录入:coldstar [复制链接] [打 印]
赞助商链接