設計一個搶票秒殺系統

設計一個搶票秒殺系統

按照我的理解,系統架構如圖:
在這裏插入圖片描述
redis負責存儲剩餘商品總數
流程:
用戶請求->負載均衡-> 服務器(服務器這裏爲了減小redis壓力,在server端設計的商品數量。當商品數量爲server端數量爲0時,不去redis扣除出庫,只有server與redis都扣除出庫數量時,才能說明用戶搶購成功)->redis緩存(緩存這裏存儲商品剩餘數量,以及訂單)->kafka(從這裏併發量開始下降,因爲和搶購相比,搶到的人數量要小的多) ->server4(這裏將訂單信息寫入數據庫,流式寫入,減少了鎖的使用,增強數據庫性能) -> server5(這裏將超時訂單和退款訂單關閉,並將關閉的訂單商品數量返回到redis中,以便其他人搶購)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章