Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在为 NGINX 开发一个反应用层攻击模块,我必须计算每秒(每秒)的请求。这个想法是制作一个攻击的自动检测器,当请求率增加时打开过滤。
目前,这是在 shell 脚本的帮助下发生的,该脚本每秒读取访问日志并计算请求率。问题是这不是很有效。
如果您对如何实现这一目标有任何想法,请分享您的想法。
谢谢!
您可以使用 HttpLimitReqModule:
http { limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; ... server { ... location /search/ { limit_req zone=one burst=5; }
参考:http ://wiki.nginx.org/HttpLimitReqModule
tail -f -s在 access_log 上使用。这很有效。
tail -f -s