一、限流nginx設置
nginx限流使用模塊 upstream
upstream?node{ server?127.0.0.1:8080?max_conns=1; }
#超出的請求會返回502狀態碼
放置在server模塊
#測試地址,訪問服務器py路徑會轉發到本機的8080端口
location?/py?{ proxy_pass?http://node/; }
#錯誤重定向到降級界面
error_page?502?503?https://fund/b.html;
注意:如果少了一個/ 會將請求轉發到8080的/py路徑下
proxy_pass?http://node;
二、準備測試環境
開啟8080端口,使用web.py 開啟一個簡單的端口
安裝web.py
pip?install?web.py==0.40-dev1
編寫網站腳本webtest.py
import?web urls?=?( ???'/',?'index') class?index: ???def?GET(self): ???????return?"Hello,?world!"if?__name__?==?"__main__": ???app?=?web.application(urls,?globals()) ???app.run()
運行腳本啟動端口 python webtest.py 0.0.0.0:8080 啟動8080端口允許任何IP訪問
三、測試限流配置
使用jmeter測試
1、限流設置為并發連接數1
請求
? ?
結果
? ?
并發請求5,發送100次,共500個請求,成功367,失敗133
并發請求10.發送100次,共1000個請求,成功566,失敗434
并發請求20.發送100次,共2000個請求,成功848,失敗1152
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END