秒殺系統綱要

#1 秒殺背景

#2 秒殺業務概要 秒殺分爲6步:
1.首頁商品列表瀏覽->商品詳情查看->搶購(搶到資格token)->下單->支付->消費、確認收貨
2.還有取消訂單,退款等操做nginx


#3 秒殺技術概要
1.關鍵字:限流、緩存、異步下單及訂單隊列、返庫存、頁面靜態化
2.限流:機器級別(CPU)限流、應用級別限流(容器當前服務請求數)、IP攻擊限流(相同IP參與秒殺次數)、H5本地緩存秒殺結果
3.緩存:使用redis做爲緩存(參與秒殺商品庫存緩存)、H5本地緩存(保存用戶秒殺結果)
4.異步下單:用戶下單請求進入隊列,前臺輪詢下單結果(下單成功或失敗)
5.訂單隊列:使用redis數據結構list做爲隊列(也可使用activemq,爲了方便,使用redis的list做爲隊列)
6.返庫存:本次秒殺搶購減緩存庫存 和 採用下單減數據庫庫存、最後支付的方式,若是搶購後15分鐘不下單,返緩存庫存;若是下單後15分鐘不支付,返緩存庫存+數據庫庫存
7.頁面靜態化:商品列表頁、詳情頁靜態生成,放在nginx上redis


#4 秒殺上線數據庫

上線後正常流程能通,可是出現了許多問題:
1.返庫存問題 致使 緩存庫存和數據庫庫存不一致
2.H5本地緩存使用不當問題 致使 搶購資格不正確緩存


#5 秒殺總結數據結構

相關文章
相關標籤/搜索