最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

訂單支付超時,自動關(guān)閉訂單實現(xiàn)

2023-03-16 19:42 作者:Erwin_Feng  | 我要投稿

> 微信公眾號:馮文議(ID:fwy-world)


大家好!


今天跟大家一起探討一個場景:用戶對商品下單,約定30分鐘沒支付,超時訂單將被系統(tǒng)自動關(guān)閉。


你會如何實現(xiàn)呢?


## 早期方案:掃表


定時任務,每分鐘去查詢數(shù)據(jù)庫,查詢超時沒有支付的,就修改訂單狀態(tài)。


![掃表實現(xiàn)](https://images.fengwenyi.com/2023/fe0f039b282940e8aa47d900d531552d.jpg)


思路清晰,實現(xiàn)起來也比較簡單,但是遇到的問題也比較多,比如:


1. 每分鐘都去查詢數(shù)據(jù)庫,數(shù)據(jù)庫的壓力比較大。

2. 有一定的延遲。


## 方案升級:消息隊列


用戶下單成功,就發(fā)送到消息隊列。時間到了,消費端拿到數(shù)據(jù),就查詢數(shù)據(jù),判斷訂單狀態(tài),如果沒有支付,就修改訂單狀態(tài)。


![消息隊列實現(xiàn)](https://images.fengwenyi.com/2023/55babdeff14c43ba8f4ddd50eb0bd472.jpg)


目前落地的是采用 RabbitMQ 的延遲隊列。用戶創(chuàng)建訂單成功,就加入到 MQ 的延遲隊列,時間到了,就會自動消費,然后關(guān)單。


關(guān)于 RabbitMQ 延遲隊列,可以看這篇文章:[Spring Boot and RabbitMQ 初探](https://mp.weixin.qq.com/s/v-ZuBwd5NMlG6a40sdiVXw) 中關(guān)于【延遲隊列】部分!


---


好了,今天的分享就到這里了。我是小馮,一名Java程序員,專注于程序設計和開發(fā),如果你在開發(fā)上遇到問題,歡迎一起交流,微信公眾號:馮文議(ID:fwy-world)。


訂單支付超時,自動關(guān)閉訂單實現(xiàn)的評論 (共 條)

分享到微博請遵守國家法律
马鞍山市| 武乡县| 马鞍山市| 宁海县| 德庆县| 清原| 武功县| 衢州市| 德安县| 淮滨县| 永泰县| 红河县| 连州市| 新干县| 五常市| 彰化县| 盈江县| 安陆市| 阜新市| 保康县| 丹东市| 左贡县| 来凤县| 渭南市| 化隆| 灵川县| 青田县| 正定县| 治县。| 乐山市| 乡宁县| 电白县| 寿阳县| 偃师市| 沈丘县| 铁岭县| 高要市| 大新县| 馆陶县| 密山市| 富民县|