采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师请教一下这个问题。谢谢老师!我很想去看些设定的这个zone存储在哪里?想cat一下这个存储的内容。 并且我还想请教这个设置的生产环境用的多吗?在生产环境设置这个的限制主要的考虑是什么? 现在的互联网的需求都是快速响应,做了这个限制不是很多客户端被拦截掉?这个跟我们追求的用户体验相违背啊?
你好,这个问题我一个个回答;
(1)我很想去看些设定的这个zone存储在哪里?
这个zone申请的内存空间,所以不是通过cat命令能读到的。
(2)并且我还想请教这个设置的生产环境用的多吗?在生产环境设置这个的限制主要的考虑是什么?
这个主要取决于应用场景,我的经验来看,如:网站有发现固定IP的大量恶意频繁请求,那么是可以通过这个limit模块有效防控的,但这个限制频率需要设置合理,以免出现误杀正常请求。
(3)现在的互联网的需求都是快速响应,做了这个限制不是很多客户端被拦截掉?这个跟我们追求的用户体验相违背啊?
你的观点有道理,如果你想做到精准定位到用户行为来作限制,那Nginx这个模块就不合适了,因为Nginx通常基于常见的变量(如:remote_addr)来作限制。
(4)关于Nginx限速原理
Nginx限速使用 Leaky(唝水桶)算法,比喻为水桶顶部倒水,底部漏水,如果倒入水的速率超过漏水的速度,则水桶漏出。如下图:
谢谢老师!你说的leaky算法后我大体理解了这个限速的实现来由。现在我打算查看下源码查看具体的实现是不是跟我猜想的一样。等阅读完成后再来这里贴出来我的笔记。再谢谢老师的提点!
登录后可查看更多问答,登录/注册
中间件、负载均衡、应用层安全防护、动静分离、Nginx+LUA开发等
3.2k 10
2.2k 12
1.1k 12
1.8k 11