基本描述:
屬性描述
外掛程式作用域
服務、路由、全域性
適用協議
配置資訊:
屬性描述
引數描述
name
外掛程式名稱、此處為rate-limiting
service_id
繫結的服務id
route_id
繫結的路由id
enabled
是否啟用該外掛程式,預設是true
consumer_id
繫結的消費者id
config.second
每秒的限流數
config.minute
每分鐘的限流數
config.hour
每小時的限流數
config.day
每天的限流數
config.month
每月的限流數
config.year
每年的限流數
config.limit_by
限制次數的衡量標準,可以取consumer、credential 或 ip,如果不能識別consumer或credential,都按照ip計數,預設是consumer
config.policy
限流累加器的計數策略,可以取local、cluster 或 redis,預設是cluster
config.fault_tolerant
當第三方資料來源出錯時,是否啟用限流功能,取true時會禁用限流功能,預設是true
config.hide_client_headers
是否隱藏訊息響應頭,預設是false
config.redis_host
redis伺服器位址
config.redis_port
redis伺服器端口
config.redis_password
redis伺服器密碼
config.redis_timeout
連線redis伺服器超時時間
config.redis_database
redis資料庫
使用詳情
curl -x post http://kong:8001/services//plugins --data "name=rate-limiting" --data "config.second=5" --data "config.hour=10000"
curl -x post http://kong:8001/routes//plugins --data "name=rate-limiting" --data "config.second=5" --data "config.hour=10000"
curl -x post http://kong:8001/consumers//plugins --data "name=rate-limiting" --data "config.second=5" --data "config.hour=10000"
x-ratelimit-limit-second: 5
x-ratelimit-remaining-second: 4
x-ratelimit-limit-minute: 10
x-ratelimit-remaining-minute: 9
模式
優點描述
cluster
準確,不需要依賴其他元件
相對來說效能影響最大的,每個請求都會強制對底層的資料來源進行讀寫操作
redis
準確,效能影響比cluster模式小
需要額外安裝redis,相比local模式效能影響大
local
效能影響最小
不太準確,除非在kong之前使用hash一致性負載均衡器
事務粒度
這個場景中,不能選用local
策略,應該在cluster
或redis
策略中考量,推薦是先嘗試使用cluster
策略,如果效能急速下降,則切換成redis
策略,需要注意的是,指標資料無法從原有資料來源切換到redis,通常來說,短週期指標(如秒、分)不受影響,長週期指標(月)可能會有影響,所以切換資料來源時需要小心
後端保護模式
這種場景中因為準確性不太重要,可以使用local
策略,這需要多些嘗試才能找到合適的值,比如使用者希望配置限流每秒100個請求,總共有5個kong節點,設定local
策略,每秒30個請求,大致可以滿足需求,如果覺得返回的失敗過於頻繁,可以適當增大閾值
需要注意的是,當增加kong節點時,會增加總請求數;同理減少kong節點時,會降低總請求數,所以調整節點數時需要同步調整閾值
在kong節點前使用hash一致性負載均衡器可以避免上述的問題,因為它會保證相同的使用者會路由到指定的kong節點,保證資料準確,並且不受節點縮放的影響
通常情況下,真實的請求數會大於限流的閾值,但是它還是能有效的防止攻擊,並且保持最佳效能
vue better scroll外掛程式使用詳解
什麼是 better scroll better scroll 是乙個移動端滾動的解決方案,它是基於 iscroll 的重寫,它和 i 的主要區別在 這裡 better scroll 也很強大,不僅可以做普通的滾動列表,還可以做輪播圖 picker 等等。在需要的檔案中新增 import bscor...
Web Uploader檔案上傳外掛程式使用詳解
webuploader檔案上傳元件在現代的瀏覽器裡面能充分發揮html5的優勢,同時又不摒棄主流ie瀏覽器,沿用原來的flash執行時,相容ie6 ios 6 android 4 兩套執行時,同樣的呼叫方式,可供使用者任意選用。採用大檔案分片併發上傳,極大的提高了檔案上傳效率。一 功能介紹 分片 併...
weiphp微信開發教程 留言板外掛程式開發詳解
1 功能分析 2 新建weiphp外掛程式 第一步,在weiphp後台管理頁面建立乙個外掛程式,記得把是否需要配置項和是否需要管理列表兩個選項都選為 是 第二步,安裝建立好的外掛程式,點選外掛程式右側的安裝鏈結即可 3 檢視 結構 外掛程式建立成功後,weiphp框架會自動在addons目錄下生成乙...