想象一個帶有名為 /valueableData 的端點的 API。服務器明確指出 API 的限制是總共 500 個請求/秒和每人 20 個請求/秒。該服務器不會檢查您的 IP,因此我可以使用 500 個正常作業的代理發出 500 個請求/秒,而 API 不會脫機。現在假設 A 發送 1000 個請求/秒,B 發送 20 個請求/秒,這導致達到 500 個限制并且 API 離線。API 重新上線后,A 每秒回傳多少個有效答案,B 回傳多少個有效答案?服務器/API 如何處理這個問題?人 A 每秒能得到 480 個有效答案,而人 B 每秒能得到 20 個有效答案嗎?或者人 A 是否能得到最多 500 個答案/秒?
uj5u.com熱心網友回復:
這取決于協議。
通常用于 REST 的 HTTP 本身是無狀態的和客戶端啟動的,因此不符合要求。
您的方案需要一個協議,該協議:
- 知道客戶是誰/曾經
- 再次上線后可以推送回復,無需客戶參與
- 可以優先回應客戶請求
我想這樣的協議存在或可以使用WebSocket實作并將狀態存盤在資料庫中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/328444.html
下一篇:這是升級標準庫鎖的有效方法嗎?
