Apache实现限速(针对每个客户端限速)

为了解决服务器视频播放压测时出现的卡顿问题,本文介绍了如何使用Apache的第三方插件mod_bw进行即时带宽和连接数控制。提供mod_bw插件的下载链接,并详细阐述了安装及配置步骤,包括在httpd.conf中设置BandWidth和MaxConnection参数,以限制每个客户端的带宽和连接数。
摘要由CSDN通过智能技术生成

使用环境:

对服务器视频播放做压测,发现后来点开的视频会出现卡顿情况,后来查看是因为前面打开的视频大量下载,占用较多,怎么能够对每个终端进行限制呢,百度了下找到了相关资料,整理了下,分享下。

mod_bw 是一个apche的第三方插件,可以实现即时带宽控制,连接数控制,对于需要对站点限速的朋友来讲是个不错的选择。

Apache插件下载

mod_bw插件我找了很久,都是需要翻墙下载的,目前我下载下来分享到百度云了,可以下载。

百度云盘存储了 mod_bw插件   http://pan.baidu.com/s/1hq3zenU  


开始安装

#tar zxvf mod_bw-0.7.tgz 
#cd mod_bw
#vi mod_bw.c  编辑mod_bw.c新增两行配置 

</pre><pre name="code" class="html">#ifdef APR_MAJOR_VERSION   //新增行
#if (APR_MAJOR_VERSION < 1)
    #define apr_atomic_inc32 apr_atomic_inc
    #define apr_atomic_dec32 apr_atomic_dec
    #define apr_atomic_add32
Tollbooth 是一个用 Go 语言编写的用来限制 HTTP 访问速度的中间件,可用来限制每个 HTTP 请求的传输速率。例如你可以不限制 / 的访问速率,但是可以针对 /login 限制每个 IP 每秒最多 POST 多少个请求。Go 程序中使用的方法:package main import (     "github.com/didip/tollbooth"     "net/http"     "time" ) func HelloHandler(w http.ResponseWriter, req *http.Request) {     w.Write([]byte("Hello, World!")) } func main() {     // You can create a generic limiter for all your handlers     // or one for each handler. Your choice.     // This limiter basically says: allow at most 1 request per 1 second.     limiter := tollbooth.NewLimiter(1, time.Second)     // This is an example on how to limit only GET and POST requests.     limiter.Methods = []string{"GET", "POST"}     // You can also limit by specific request headers, containing certain values.     // Typically, you prefetched these values from the database.     limiter.Headers = make(map[string][]string)     limiter.Headers["X-Access-Token"] = []string{"abc123", "xyz098"}     // And finally, you can limit access based on basic auth usernames.     // Typically, you prefetched these values from the database as well.     limiter.BasicAuthUsers = []string{"bob", "joe", "didip"}     // Example on how to wrap your request handler.     http.Handle("/", tollbooth.LimitFuncHandler(limiter, HelloHandler))     http.ListenAndServe(":12345", nil) 标签:Tollbooth
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值