84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
1.有一个用户在10毫秒内提交了两个请求.前端已经上了应用市场,所以改不了,只能从java下手.请问怎么设计能将第二个请求直接打回?并且需要考虑并发情况
补充:如果需要对所有的接口都进行这种过滤,请问需要如何设计?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
寫個攔截器,過濾下。連續兩次相隔時間大於10ms的過濾下
PHP的laravel框架裡有個概念就是中間件,可以把請求都先用指定的中間件過濾下。
不過估計你現在的情況得用到記憶體資料庫。把請求的內容編碼後插入到庫裡(加上請求時間欄位),回應請求時候先查詢是否有編碼相同的請求,如果沒有回應請求,如果有,比對時間差後再做處理。
過於頻繁要求的用戶可以加入黑名單。
當然這都還有個必要條件就是請求的內容裡可以判斷出用戶,不然就難搞了。
寫個攔截器,過濾下。連續兩次相隔時間大於10ms的過濾下
PHP的laravel框架裡有個概念就是中間件,可以把請求都先用指定的中間件過濾下。
不過估計你現在的情況得用到記憶體資料庫。把請求的內容編碼後插入到庫裡(加上請求時間欄位),回應請求時候先查詢是否有編碼相同的請求,如果沒有回應請求,如果有,比對時間差後再做處理。
過於頻繁要求的用戶可以加入黑名單。
當然這都還有個必要條件就是請求的內容裡可以判斷出用戶,不然就難搞了。