NGINX限制访问速度

1. 编辑nginx的配置文件

vi /etc/nginx/nginx.conf

在http段内添加

http{ 
	limit_conn_zone $binary_remote_addr zone=addr:10m;
	limit_conn_zone $server_name zone=perserver:10m;
···
···
···
}
2. 编辑网站的nginx配置文件

vi /etc/nginx/conf.d/123.com.conf

在对应的location下添加

location / {
	limit_conn perserver 50;    # 限制当前站点最大并发数 50
	limit_conn addr 10; 		# 限制单个IP访问最大并发数
	# limit_rate_after 1M; 		# 1M以后开始限速
	limit_rate 64k;  			# 限制每个请求的流量上限(单位是:bytes per second)

计算:

  • 每个IP最多10个线程
  • 每个线程最高下载速度64kb/s
  • 站点最多支持50并发

如果以当前配置满负荷下载,则服务器带宽 = 10 * 64 * 50 / 1024= 31.25MB/s。
如果计算错误请留言指正。

参考:
https://blog.imgchr.com/archives/20/
http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html
https://www.oreilly.com/library/view/nginx-http-server/9781788623551/e7253564-8116-482c-a36e-3a282f490ba5.xhtml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值