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

歡迎光臨散文網(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)的評論 (共 條)

分享到微博請遵守國家法律
昌平区| 广昌县| 南投县| 且末县| 汾阳市| 肃宁县| 金溪县| 比如县| 肇州县| 成安县| 灵丘县| 汤原县| 和硕县| 五寨县| 惠来县| 卓资县| 吴堡县| 专栏| 泌阳县| 铜川市| 黄平县| 吉木乃县| 温州市| 偃师市| 类乌齐县| 鄢陵县| 九龙坡区| 满城县| 大荔县| 镇沅| 呼伦贝尔市| 龙口市| 正阳县| 莱州市| 阿城市| 晋中市| 齐河县| 南投市| 古交市| 英山县| 潞西市|