日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 万象百科 >内容正文

万象百科

抢购时,用异步队列处理下单,那怎么实时把下单结果通知用户呢?

發布時間:2023/11/17 万象百科 36 博士
生活随笔 收集整理的這篇文章主要介紹了 抢购时,用异步队列处理下单,那怎么实时把下单结果通知用户呢? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
client端用js輪詢一個接口,用來獲取處理狀態

搶購最重要的是要保證庫存數據的強一致性,搶購的瞬時流量非常大,如果使用MySql等一些關系型數據庫可能會扛不住這方面的壓力。一般會結合緩存中間件進行處理,例如redis。搶購開始前,將商品和庫存數據同步到redis中,所有的搶購操作都在redis中進行處理,后臺開啟一個異步任務,定時的將庫存數據刷到數據庫中。跟著開始對訂單進行付款,由于流量較大,第三方支付系統本身也對調用端的應用限制流量,所以你這邊所說的應該是我接下來需要描述的。這里必然要使用消息隊列(也就是你所說的異步隊列),可以參考淘寶雙11的限流措施,為了保護系統不受高流量的沖擊而導致系統崩潰的問題,消息隊列做了一層緩沖保護,系統需要設計一個窗口模型,窗口模型會實時的刷新用戶辦理手續的狀態。例如,用戶下單之后準備去付款,這個時候會跳到辦事大廳的服務窗口,如果此時窗口都滿了,也就是消費者的數量達到上線了,那么需要用戶開始排隊,系統可以通過彈出等待窗口,讓用戶等待一下,一旦有空閑的線程釋放出來,用戶就可以開始支付下單。上面的是以拍下減庫存的模型進行說明,如果你們設計的系統是付款減庫存,稍微會有些出入,但是同樣也需要這樣的窗口需要告知用戶狀態,及時用戶付款成功,雖然沒及時把狀態返回給用戶,用戶能夠通過一個頁面及時查看到他的窗口狀態就可以了。

總結

以上是生活随笔為你收集整理的抢购时,用异步队列处理下单,那怎么实时把下单结果通知用户呢?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。