Web应用服务器如何实现并发访问控制
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章主要为大家展示了"Web应用服务器如何实现并发访问控制",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Web应用服务器如何实现并发访问控制"这篇文章
千家信息网最后更新 2024年11月26日Web应用服务器如何实现并发访问控制
这篇文章主要为大家展示了"Web应用服务器如何实现并发访问控制",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Web应用服务器如何实现并发访问控制"这篇文章吧。
前端负载一台,作用是客户端发起一条http请求到前端负载均衡服务器,然后负载层根据web server已定义的轮询算法,把各消息原封不动的转发到后段的各web server上,压力这块不是很大,因为都转到后端了。
但是有个问题,客户端在发起一条http请求到前端负载层的时候,一分钟内这个请求数会达到惊人的几十万条不等(项目业务需要,客户端自身需要把金额等数据同步到各项目服务器上),基本是客户端对服务端发起的同步请求,还有其它的对web站点的访问请求。然后可能有些同步请求不是必须也不需要那么频繁或者是在这个时间内根本不需要把数据同步上来。固鉴于此就想着看能不能在前端负载层做个并发控制,对这个传过来的客户端IP做个操作。当这个IP请求次数大于内部设定的某个值的时候就让它拒绝访问服务器,这样的话服务器在处理消息的时候也会更加有效率,也能起到一定的宫级作用。想了想应该可以实现,所以才有了下面的脚本。记录下来供各位小伙伴参考下......
#!/bin/bash#Author:You Names#Contact Mail:455436588@qq.com#Version:3.0#Company:COMPANY#Create time:2019-07-17 17:31:58#Description:Nginx server concurrency restrictionsMax=100000CFS=/usr/local/nginx/conf/nginx.confLOGS=/usr/local/nginx/logs/access.log#执行循环体#过滤出access.log日志里所定义的'$remote_addr'地址。重复的打印出来并排序;cat $LOGS | awk '{print $2}' | sort -n | uniq -c | sort -rn | head -n 10 | while read line do #定义变量$IP,打印出是哪个IP; IP=`echo "$line" | awk '{print $2}'` #定义变量$Count,打印出这个IP出现的次数; Count=`echo "$line" | awk '{print $1}'` #定义变量$Docs,值为nginx的配置文件; Docs=${cat $CFS} #定义变量$CFG,看配置文件里有没有这个IP; CFG=`echo "$Docs" | grep "${IP}"` #判断,如果$Count的值大于$Max的值,并且在$CFG里为空,不是这也不是那,执行替换并写入到$Docs指定location下做deny操作,重载并continue; if [[ $Count -gt $Max ]] && [[ $CFG == " " ]] && [[ $IP != "IP ADDRESS" ]] && [[ $IP != "IP ADDRESS" ]] then sed -i '/location \/ {/a\deny '${IP}';' $CFS sed -i '/location \/pads {/a\deny '${IP}';' $CFS sed -i '/location \~\* \\\.ios\$ {/a\deny '${IP}';' $CFS sed -i '/location \~\* \\\.android\*\$ {/a\deny '${IP}';' $CFS /usr/local/nginx/sbin/nginx -t && /usr/local/nginx/sbin/nginx -s reload && echo "SUCCESS!!" else continue fidone
以上是"Web应用服务器如何实现并发访问控制"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
服务
服务器
客户
客户端
控制
前端
变量
同步
应用
内容
时候
篇文章
作用
数据
文件
次数
消息
项目
学习
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库数字字符串拼接
数据库 正在还原 删除文件
数据库中间件+数据访问层
软件开发工程师题含答案
网址95work服务器干啥用的
沃小号服务器终端注销失败
泉州扬盛网络技术有限公司
漳州彩淘网络技术有限公司
网络安全防护
台达服务器B3报AL013
软件开发流程五个阶段模型
telnet远程登陆服务器
服务器怎么分割vps
数据库及系统运维标准
我的世界血刃反派逃杀服务器下载
著名的网络安全事件有哪些
软件开发项目系统验收
学生买服务器需要注意哪些
为什么数据库拒绝访问
芒果tv网络技术布局
cpu网络安全吗
apk服务器验证怎么去除
中国各省碳排放数据库
图书馆数据库怎么查
服务器异常
帮我搜一下网络安全手抄报
重庆快成网络技术有限公司
高度重视大学生网络安全工作
db3数据库编辑
安装用友数据库时显示确认