一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - Nginx - 使用nginx實現分布式限流的方法

使用nginx實現分布式限流的方法

2019-12-19 13:48爛豬皮 Nginx

一般對外暴露的系統,在促銷或者黑客攻擊時會涌來大量的請求,為了保護系統不被瞬間到來的高并發流量給打垮, 就需要限流。接下來通過本文給大家分享使用nginx實現分布式限流的方法,感興趣的朋友跟隨腳本之家小編一起學習吧

1.前言

一般對外暴露的系統,在促銷或者黑客攻擊時會涌來大量的請求,為了保護系統不被瞬間到來的高并發流量給打垮, 就需要限流 .

本文主要闡述如何用nginx 來實現限流. 聽說 Hystrix 也可以, 各位有興趣可以去研究哈 .

2.首先部署一個對外暴露接口的程序

我這里部署的是一個spring boot 項目 里面暴露了如下接口, 很簡單

使用nginx實現分布式限流的方法

暴露了一個 get 請求返回 hello world 的restful 接口.

將此程序部署到 linux 服務器上. 部署步奏不再贅述, 自行百度 spring boot 部署 即可.

在此我向大家推薦一個架構學習交流群。交流學習群號:575745314 里面會分享一些資深架構師錄制的視頻錄像:有Spring,MyBatis,Netty源碼分析,高并發、高性能、分布式、微服務架構的原理,JVM性能優化、分布式架構等這些成為架構師必備的知識體系。還能領取免費的學習資源,目前受益良多

使用nginx實現分布式限流的方法

3.創建一個名稱為 nginx.conf 的 nginx 配置文件

創建一個 名叫 nginx.conf 的配置文件, 完整內容如下

使用nginx實現分布式限流的方法

配置文件中限流部分解釋:

如上, nginx 的限流配置 , 只有兩行代碼.

第一行:

使用nginx實現分布式限流的方法

limit_req_zone : 是限流聲明.

$binary_remote_addr: 表示根據客戶端 ip 來 限流, 比如 上面的限流配置 限制每個客戶端ip的請求頻率為一秒一次, 你如果耍流氓一秒兩次, 就會被限流 會返回一個http 503 錯誤給你.

zone=perip: 表示 用 perip 這個 名稱 來標識 這行限流配置, 待會 會通過 perip 這個名稱來引用這行限流配置(也就是說限流配置是可以定義為多個的)

10m: 表示存儲客戶端ip的空間為10MB, 1MB 大概存儲1萬多ip , 10 MB 大概 10多萬Ip , 參考解釋: http://www.ttlsa.com/nginx/ng... 在這篇文章中搜索 binary_remote_addr 即可定位相關解釋.

rate=1r/s: 表示頻率是 一秒一個請求.

第二行:

使用nginx實現分布式限流的方法

表示在 myserver 這個集群上, 使用 名稱為 perip 的限流配置

4.用docker 部署 nginx

將上一步創建的 nginx.conf 配置文件, 拷貝到linux 目錄 , /root/nginx/ 下 (目錄可以任意), 然后 一個docker 命令部署好 nginx 環境

使用nginx實現分布式限流的方法

這里暴露的是 8080 端口, 通過 8080 端口可以訪問到 nginx 配置中的負載均衡節點, 即 192.168.10.253:8090 ip端口, 這個 ip端口對應的就是 , 第一步創建部署的 hello world 程序.

用代碼訪問 第一步定義的 helloworld 接口

使用nginx實現分布式限流的方法

我這里是 一秒 執行 10次 get 請求, 已經大于了 nginx中配置的 rate=1r/s 一秒一次的請求, 所以會看到 503 報錯, 如下.

使用nginx實現分布式限流的方法

如果改哈代碼, 改為一秒執行一次get 請求, 就不會報錯, 各位可以去試一下

總結

以上所述是小編給大家介紹的使用nginx實現分布式限流,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://my.oschina.net/u/3636867/blog/1817669

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品在线免费观看视频 | 亚洲欧美国产在线 | 日韩欧一级毛片在线播无遮挡 | 日本丰满www色 | 亚洲高清视频免费 | 国产精品视频在这里有精品 | 俄罗斯女同和女同xx | 我半夜摸妺妺的奶C了她 | 白丝超短裙被输出娇喘不停小说 | 3d动漫美女被吸乳羞羞视频 | 午夜宅男在线观看 | 性刺激欧美三级在线现看中文 | poren18日本老师hd | 日本一区二区视频免费播放 | 韩国免费特一级毛片 | 爽新片xxxxxxx | 国产91青青成人a在线 | yy6080午夜国产免费福利 | 好 舒服 好 粗 好硬 好爽 | 国产成人精品免费2021 | 18捆绑调教在线高清 | avtt在线 | 日韩一区二区三区不卡视频 | 吃瓜视频在线观看 | 亚洲精品成人A8198A片漫画 | 波多野结衣178部中文字幕 | xxxxyoujizz护士| 2019年国产不卡在线刷新 | h在线动漫 | 久久精品国产亚洲AV蜜臀 | 亚洲福利一区二区精品秒拍 | 精品综合久久久久久88小说 | 国产精品伊人 | 国产99区| 亚洲免费在线观看 | a级黄色网 | 欧洲vodafonewi喷潮 | 久久re6热在线视频 久久AV喷吹AV高潮欧美 | 亚洲精品丝袜在线一区波多野结衣 | 国产欧美视频在线观看 | 日本漫画无翼乌 |