Nginx限制连接控制访问量

一:限制连接数模块(同时访问网址能访问多少次)

copy
1、创建一个内存空间存放访问者的IP 2、设置每一个访问者的同时连接次数
1.修改网址模块文件
copy
vim /etc/nginx/conf.d/game.conf

image

copy
# 创建一个叫linux的空间,主要用来存放客户端ip,大小给10m limit_conn_zone $remote_addr zone=linux:10m; server { listen 80; server_name 192.168.15.7; # 调用linux空间,限制连接数为1 limit_conn linux 1; location / { root /opt/jiaoben1765/jiaoben1765; index index.html; } }
2.测试
copy
nginx -t
3.重启
copy
systemctl restart nginx
4.增加解析ip
copy
[root@web01 ~]# vim /etc/hosts

image

copy
借助工具访问网址 知识储备: 1、安装ab测试命令 yum install httpd-tools -y 2、ab 参数 -n : 总共需要访问多少次 -c : 每次访问多少个
5.压力测试
copy
1.200个并发同时访问一万次 2.命令行没办法解析网址 ab -n 100000 -c 200 http://192.168.15.7/

image

二:控制Nginx访问量

1.连接池
copy
limit_req_zone $remote_addr zone=one:10m rate=1r/s; 声明连接池 变量 名称 连接池的大小 速率
2、限制数
  • 案例1:要求每秒只能有一个访问
copy
修改网址模块文件 [root@web01 conf.d]# vim game5.conf

image

copy
limit_req_zone $remote_addr zone=one:10m rate=1r/s; server { listen 80; server_name 192.168.15.7; limit_req zone=one burst=5; location / { root /opt/Super_Marie; index index.html; } }
3.测试
copy
nginx
4.重启
copy
systemctl restart nginx
5.压力测试
copy
[root@web02 ~]# ab -n 100000 -c 1000 http://192.168.15.7/

image

posted @   AlexEvans  阅读(697)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示
🚀