秒殺系統設計
【第一版設計】
1、前端頁層面:防重復提交控制
1)頁面秒殺按鈕置灰
2)頁面防重復提交
2、應用層面
1)令牌機制,通過Redis分配令牌,只有拿到令牌的用戶才可去訪問資料庫
2)同一個用戶需設定時間間隔,過
時間間隔才可再次提交
3、DB層面
1)防止超賣:資料庫樂觀鎖
【第二版設計】
0、【過濾合法請求】對請求引數做安全校驗和介面簽名驗證
1、【請求分發過濾】請求后端介面前->引入Nginx做負載均衡,分攤請求量
2、【單機瓶頸】請求量更多,超出單臺Redis處理瓶頸,Redis集群
3、【資料庫瓶頸】資料庫處理壓力太大,引入訊息佇列MQ,異步處理訊息請求,然后做資料庫分庫磁區分表處理
4、【系統架構優化】拆分出獨立秒殺微服務,對突發請求量,采用Docker技術 k8s等提供自動擴縮容能力
參考圖:

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/239660.html
標籤:其他
