精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

互聯網面試必備之超時訂單自動關閉的優雅實現

新聞
12306訂單,比如我們買了一張票,一般會給30分鐘的支付時間,如果30分鐘內沒有支付,則系統會自動取消訂單,然后釋放鎖定座位。

任務場景

12306訂單,比如我們買了一張票,一般會給30分鐘的支付時間,如果30分鐘內沒有支付,則系統會自動取消訂單,然后釋放鎖定座位。

 

互聯網面試必備之超時訂單自動關閉的優雅實現

那么超時訂單有哪幾種實現方式呢?

超時訂單自動關閉的優雅實現

1、數據庫輪詢(30S)

訂單表(訂單ID,狀態,創建時間)

 

互聯網面試必備之超時訂單自動關閉的優雅實現

輪詢數據庫會帶來什么問題?

  • 輪詢大部分時間其實是在做無用功,我們假設一張訂單是45分鐘過期,每分鐘我們掃描一次,對這張訂單來說,要掃描45次以后,才會檢查到這張訂單過期,這就意味著數據庫的資源(連接,IO)被白白浪費了;
  • 處理上的不及時,一個待支付的電影票訂單我們假設是12:00:35過期,但是上次掃描的時間是12:00:30,那么這個訂單實際的過期時間是什么時候?12:01:30,和我本來的過期時間差了55秒鐘。放在業務上,會帶來什么問題?這張電影票,假設是最后一張,有個人12:00:55來買票,買得到嗎?當然買不到了。那么這張電影票很有可能就浪費了。如果縮短掃描的時間間隔,第一只能改善不能解決,第二,又會對數據庫造成更大的壓力。

2、使用DelayQueue 實現

 

互聯網面試必備之超時訂單自動關閉的優雅實現

DelayQueue: 阻塞隊列(先進先出)

  • 支持阻塞的插入方法:意思是當隊列滿時,隊列會阻塞插入元素的線程,直到隊列不滿
  • 支持阻塞的移除方法:意思是在隊列為空時,獲取元素的線程會等待隊列變為非空。

Delayed接口使對象成為延遲對象,它使存放在DelayQueue類中的對象具有了激活日期。該接口強制實現下列兩個方法。

應用重啟帶來的問題

  • 保存在Queue 中的訂單會丟失
  • 已過期的訂單不會被處理

 

互聯網面試必備之超時訂單自動關閉的優雅實現

解決之道

 

互聯網面試必備之超時訂單自動關閉的優雅實現

從系統伸縮性角度考慮:應用集群化了怎么辦?

集群化了會帶來什么問題?應用之間會相互搶奪訂單,特別是在應用重啟的時候,重新啟動的那個應用會把不屬于自己的訂單,也全部加載到自己的隊列里去,一是造成內存的浪費,二來會造成訂單的重復處理,而且加大了數據庫的壓力。

解決方案:

1、 給每臺服務器編號,然后在訂單表里登記每條訂單的服務器編號;2,更簡單的,在訂單表里登記每臺服務器的IP地址,修改相應的sql語句即可。

幾個問題:如果有一臺服務器掛了怎么辦?運維吃干飯的嗎?服務器掛了趕緊啟動啊。如果是某臺服務器下線或者宕機,起不來怎么辦?這個還是還是稍微有點麻煩,需要人工干預一下,手動把庫里的每條訂單數據的服務器編號改為目前正常的服務器的編號,不過也就是一條sql語句的事,然后想辦法讓正常的服務器進行處理(重啟正常的服務器)。

能不能同時解決伸縮性和擴展性問題?

用delayqueue是隊列,分布式情況我們何不直接引入消息中間件呢?一舉解決我們應用的伸縮性和擴展性問題

我們可以使用ActiveMQ的延遲和定時投遞

3、ActiveMQ延遲隊列

修改配置文件(activemq.xml),增加延遲和定時投遞支持

 

 

  1. <broker xmlns="http://activemq.apache.org/schema/core" 
  2. brokerName="localhost" dataDirectory="${activemq.data}"  
  3. schedulerSupport="true"

需要把幾個描述消息定時調度方式的參數作為屬性添加到消息,broker端的調度器就會按照我們想要的行為去處理消息。

一共有4個屬性:

  1. AMQ_SCHEDULED_DELAY :延遲投遞的時間
  2. AMQ_SCHEDULED_PERIOD :重復投遞的時間間隔
  3. AMQ_SCHEDULED_REPEAT:重復投遞次數
  4. AMQ_SCHEDULED_CRON:Cron表達式

ActiveMQ也提供了一個封裝的消息類型:org.apache.activemq.ScheduledMessage,可以使用這個類來輔助設置,使用例子如:延遲60秒

 

  1. MessageProducer producer = session.createProducer(destination); 
  2. TextMessage message = session.createTextMessage("test msg"); 
  3. long time = 60 * 1000; 
  4. message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, time); 
  5. producer.send(message); 

例子:延遲30秒,投遞10次,間隔10秒:

 

  1. TextMessage message = session.createTextMessage("test msg"); 
  2. long delay = 30 * 1000; 
  3. long period = 10 * 1000; 
  4. int repeat = 9; 
  5. message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, delay); 
  6. message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_PERIOD, period); 
  7. message.setIntProperty(ScheduledMessage.AMQ_SCHEDULED_REPEAT, repeat); 
  8. 也可使用 CRON 表達式,如message.setStringProperty(ScheduledMessage.AMQ_SCHEDULED_CRON, "0 * * * *"); 

也可使用 CRON 表達式,如message.setStringProperty(ScheduledMessage.AMQ_SCHEDULED_CRON, "0 * * * *");

4、Redis有序集合

Redis 有序集合

Redis sortedSet 集合(sorted set 也叫zset) 是一個有序集合,每個元素(member)都關聯了一個score,可以通過score排序獲取集合中的值。

zset常用命令:

  • 添加元素:zadd key score member[[score member]]
  • 按順序查詢元素:zrange key start stop [withscores]
  • 查詢元素score:zscore key member
  • 移除元素: zrem key member 【member ...】

將訂單超時時間戳(long)與訂單號分別設置為score與member,系統掃描第一個元素判斷定是否超時,拿到分數最小的,超時時間最早的。判斷與當前時間戳的關系

 

互聯網面試必備之超時訂單自動關閉的優雅實現

生產者

 

互聯網面試必備之超時訂單自動關閉的優雅實現

消費者

 

互聯網面試必備之超時訂單自動關閉的優雅實現

5、Redis Set 集合

將訂單延遲時間的秒級時間戳設置為set集合的key,value 為訂單ID

sadd set的key item的項值,item項可以有多個

按秒級的時間進行聚合,即 key為時間戳,里面可以由多個ID

 

互聯網面試必備之超時訂單自動關閉的優雅實現

 

互聯網面試必備之超時訂單自動關閉的優雅實現

總結

1、DB輪詢

  • 優點: 實現簡單、無 技術難點、異常恢復、支持分布式/進群環境
  • 缺點:影響數據庫性能、時效性差、效率低

2、DelayedQueue

  • 優點: 實現簡單、性能較好
  • 缺點: 異常恢復困難、分布式/集群實現坤丹

3、redis

優點 ; 解耦、異常恢復、支持分布式/集群環境

缺點

  • 增加redis維護、占用寬帶
  • 有序 集合缺點: 當sortedSet集合中元素過多時,插入性能降低
  • Set集合缺點: 已經超時未處理的訂單不好處理

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2025-08-01 04:10:00

RocketMQ訂單分布式

2015-07-21 17:19:55

用友iUAP

2011-08-19 11:33:32

2021-09-07 08:14:26

訂單超時未支付

2015-06-24 15:35:54

2015-05-28 16:11:07

互聯網+

2021-04-20 08:00:31

Redisson關閉訂單支付系統

2018-08-15 09:02:59

產業互聯網工業互聯網物聯網

2014-10-11 09:16:59

互聯網協議

2014-01-15 14:35:35

云計算

2017-08-03 16:37:35

互聯網法院司法

2015-10-08 15:20:34

互聯網物聯網

2017-08-11 13:03:54

互聯網+工業轉型

2012-06-26 13:18:23

互聯網公社

2019-03-15 19:41:39

MySQL面試數據庫

2022-05-05 07:49:54

業務冪MySQL索引

2023-12-05 15:49:29

2015-10-30 17:50:18

互聯網金融

2015-09-22 09:17:33

互聯網發展史

2014-05-30 17:53:43

移動互聯網
點贊
收藏

51CTO技術棧公眾號

婷婷社区五月天| 日日摸日日碰夜夜爽av| 午夜精品久久久久久久爽| 精品99视频| 亚洲精品美女在线| 九色porny自拍| 啪啪免费视频一区| 久久久午夜精品理论片中文字幕| 国产又爽又黄的激情精品视频| 婷婷久久综合网| 亚洲精品**不卡在线播he| 欧美精品免费视频| 日韩avxxx| a级毛片免费观看在线| 久久综合色综合88| 亚洲一区二区三区在线免费观看| 成人在线免费看视频| 99热在线成人| 亚洲欧美日本精品| 中文在线字幕观看| 日本免费在线一区| 色综合久久天天| 成人在线免费观看视频网站| 国产毛片av在线| www.久久精品| 99蜜桃在线观看免费视频网站| 国产午夜无码视频在线观看| 在线成人黄色| 久久综合网hezyo| 手机看片福利视频| 日韩中出av| 日韩精品资源二区在线| 亚洲精品综合在线观看| 成人自拍视频网| 狠狠躁夜夜躁久久躁别揉| 成年在线观看视频| 日本在线免费网| 国产日韩欧美精品在线| 精品国产一区二区三区麻豆免费观看完整版 | 9色在线观看| 久久这里只有精品视频网| 国产精品综合久久久久久| 国产黄a三级三级三级| 美女mm1313爽爽久久久蜜臀| 琪琪第一精品导航| 日本一区二区三区精品| 最新成人av网站| 欧美激情视频在线| 劲爆欧美第一页| 欧美精品黄色| 欧美成人免费视频| 国产午夜手机精彩视频| 香蕉av一区二区| 日韩在线观看免费高清| 波兰性xxxxx极品hd| 日韩中字在线| 日韩中文字幕av| 国精品人伦一区二区三区蜜桃| 欧美三级伦理在线| 在线电影av不卡网址| 少妇无套高潮一二三区| 欧美美女视频| 色婷婷综合成人av| 2014亚洲天堂| 在线中文一区| 欧美国产中文字幕| 日本一区二区三区四区五区| 日韩一级免费| 日本精品久久久久久久| 五月婷婷六月婷婷| 蜜乳av一区二区| 成人免费在线视频网站| www.国产黄色| av电影在线观看一区| 久久偷窥视频| 97电影在线看视频| 亚洲精品久久久蜜桃| 狠狠干视频网站| 成人国产电影在线观看| 在线观看一区二区视频| 亚洲a级黄色片| 国产精品宾馆| 国产亚洲综合久久| 成人在线观看免费完整| 亚洲精品乱码久久久久久蜜桃麻豆| 国产91精品久久久久久| 怡红院男人天堂| 国产成人在线免费观看| 免费精品视频一区二区三区| jizz在线免费观看| 亚洲主播在线播放| 日本xxxxxxx免费视频| 亚洲欧美专区| 亚洲精品美女视频| 久久国产精品国语对白| 亚洲麻豆一区| 国产欧美亚洲视频| 特黄aaaaaaaaa真人毛片| 欧美高清一级片在线观看| 在线观看18视频网站| 波多野结衣亚洲| 欧美一区在线视频| 国精产品一区二区三区| 欧美激情一级片一区二区| 国产91免费看片| www.日韩高清| 国产精品日产欧美久久久久| 免费毛片网站在线观看| 青青国产精品| 亚洲欧美中文字幕| 国产乱国产乱老熟300| 日日欢夜夜爽一区| 不卡一区二区三区视频| 在线日本视频| 色婷婷综合久久久久中文一区二区 | 手机看片国产日韩| 亚洲少妇自拍| 97人人模人人爽人人少妇| 国产h在线观看| 天天影视色香欲综合网老头| 波多野结衣网页| 精品视频免费| 欧美中文在线视频| 免费激情视频网站| 亚洲男人的天堂在线aⅴ视频| 可以免费在线看黄的网站| jazzjazz国产精品久久| 久久躁狠狠躁夜夜爽| 中文字幕一区二区三区四区免费看| 99久久夜色精品国产网站| 一本色道久久88亚洲精品综合 | 欧美日韩dvd在线观看| 亚洲狠狠婷婷综合久久久久图片| 国产综合自拍| 91成人在线看| 成人在线视频亚洲| 欧美日韩国产天堂| 亚洲毛片亚洲毛片亚洲毛片| 日韩一区欧美二区| 欧美最大成人综合网| 日韩av影片| 国产视频在线一区二区| 日韩美女视频网站| av成人免费在线| 日本欧美黄色片| 久久大胆人体视频| 97精品在线视频| 熟妇人妻一区二区三区四区| 天天操天天综合网| 人妻丰满熟妇av无码久久洗澡 | 色综合久久综合| 一区二区三区少妇| 亚洲欧美卡通另类91av| 久久综合一区二区三区| gay欧美网站| 亚洲全黄一级网站| 五月激情丁香网| 中文字幕一区日韩精品欧美| 国产美女18xxxx免费视频| 97精品国产福利一区二区三区| 国产欧美精品日韩精品| 黄色网址在线免费播放| 欧美一区二区精品在线| 私库av在线播放| 成人福利视频在线| 精品人妻一区二区三区四区在线 | 99久久人爽人人添人人澡| 色综合91久久精品中文字幕| 亚洲国产精品久久人人爱潘金莲| 亚洲国产成人91porn| 中文字幕免费在线播放| 久久久久欧美精品| 亚洲三级一区| 三级欧美日韩| 4444欧美成人kkkk| aiai在线| 精品美女一区二区三区| 好看的av在线| 亚洲欧洲韩国日本视频| 熟妇高潮一区二区| 久久天天综合| 99热都是精品| 久久99精品久久久久久园产越南| 国产精品人成电影| 蜜臀av国内免费精品久久久夜夜| 精品中文字幕久久久久久| 中文字幕av无码一区二区三区| 亚洲人成精品久久久久| 熟妇人妻久久中文字幕| 男女男精品视频| 成人短视频在线观看免费| 亚洲素人在线| 亚洲综合最新在线| 欧洲一级精品| 欧美精品videosex极品1| 国产黄色免费在线观看| 精品日韩99亚洲| 成人黄色免费网| 亚洲va欧美va人人爽| 刘亦菲国产毛片bd| 99精品桃花视频在线观看| 在线能看的av网站| 久久精品主播| 欧美在线观看黄| 97视频热人人精品免费| 久久久久久久久久久久久9999| 高清国产一区二区三区四区五区| 2019中文字幕在线免费观看| www在线观看播放免费视频日本| 日韩乱码在线视频| 亚洲av无码国产精品久久不卡| 日本道在线观看一区二区| 九九视频免费观看| 国产精品久久久久精k8| 亚洲第一黄色网址| 国产v综合v亚洲欧| 做a视频在线观看| 天堂va蜜桃一区二区三区 | 精品剧情v国产在线观看在线| 怡春院在线视频| 欧洲在线/亚洲| 极品国产91在线网站| 精品久久久久久| 99视频只有精品| 自拍偷自拍亚洲精品播放| 欧美成人另类视频| 91麻豆成人久久精品二区三区| 老熟女高潮一区二区三区| 国产麻豆一精品一av一免费| 日本爱爱免费视频| 久久在线精品| 欧美xxxxx在线视频| 欧美激情四色| 国产91在线亚洲| 国产精品porn| 欧美日韩激情四射| 女人香蕉久久**毛片精品| 久久久国产精华液999999| 日韩精品一区二区久久| 日韩国产欧美精品| 成人毛片免费看| 少妇精品久久久久久久久久| 国产精品一在线观看| 免费中文日韩| 国产一区二区在线| 日韩一本精品| 第一会所sis001亚洲| 午夜一区二区三区| 水蜜桃久久夜色精品一区| 亚洲精品中字| 91精品一区国产高清在线gif| 宅男一区二区三区| 重囗味另类老妇506070| 黄色片免费在线观看视频| 国产精品magnet| 欧美日韩不卡在线视频| 在线视频亚洲| 久久九九国产视频| 美女精品一区二区| 欧美一级免费在线| 成人av动漫在线| 中文幕无线码中文字蜜桃| 国产欧美一二三区| 性欧美疯狂猛交69hd| 亚洲综合精品自拍| 中文字幕亚洲精品在线| 色美美综合视频| 一个人看的www日本高清视频| 91精品国产色综合久久ai换脸| 精品毛片在线观看| 日韩高清有码在线| caoporn国产精品免费视频| 色阁综合伊人av| 在线观看av免费| 欧美在线影院在线视频| 国精产品一区二区三区有限公司| 国产欧美 在线欧美| 成人资源在线| 日韩一区二区电影在线观看| 亚洲影视一区二区三区| 免费av手机在线观看| 日韩精品成人一区二区三区| 爽爽爽在线观看| 2023国产精品| 国产老头老太做爰视频| 欧美日韩在线影院| 亚洲一级片免费看| 亚洲电影在线看| 日本视频在线观看| 国精产品一区一区三区有限在线| 日韩久久一区二区三区| 97人人干人人| 成人在线免费观看网站| 久久久久久av无码免费网站下载| 久久久久久婷| 真实乱偷全部视频| 久久久久久久久蜜桃| 日韩一级片av| 色婷婷亚洲综合| 亚洲黄色一级大片| 在线性视频日韩欧美| 成人性生交大片免费看网站| 国产精品视频地址| 久久a级毛片毛片免费观看| 自拍另类欧美| 日本欧美一区二区三区| 国产性生活毛片| 中文字幕一区不卡| 成人h动漫精品一区二区下载| 日韩三级av在线播放| av免费观看一区二区| 91精品国产精品| 中文字幕日韩在线| 亚洲天堂av免费在线观看| 午夜在线一区二区| 麻豆tv在线观看| 亚洲视频狠狠干| 国产精品露脸视频| 亚洲码在线观看| www在线看| av成人观看| 亚洲91中文字幕无线码三区| 欧美综合在线观看视频| 99re成人精品视频| 国产无遮挡aaa片爽爽| 51精品秘密在线观看| 91官网在线| 国产精品1234| 欧美日本成人| 国产91对白刺激露脸在线观看| 成人激情免费网站| 欧美成人一二三区| 欧美一区二区三区电影| 日本在线免费看| 91视频88av| 香蕉av一区二区| 中文字幕第66页| 亚洲欧美激情一区二区| 国产欧美日韩成人| 久久久国产精品免费| 亚洲综合资源| av不卡在线免费观看| 韩国三级电影一区二区| 久久中文免费视频| 欧美一区二区三区免费观看视频 | 91国内精品久久| 岛国成人av| 免费在线观看亚洲视频| 久久综合色婷婷| 性高潮视频在线观看| 在线不卡国产精品| avtt久久| 4444亚洲人成无码网在线观看 | 亚洲成人动漫一区| 日本中文不卡| 97电影在线观看| 国产成人精品综合| 日韩aaaa| 中文字幕视频三区| 中文在线а√在线8| 亚洲成va人在线观看| 一级片aaaa| 精品国产欧美一区二区三区成人| 先锋影音网一区二区| 国产高清免费在线| 国产aⅴ综合色| 最近中文字幕一区二区| 欧美videos另类精品| 日韩欧美国产午夜精品| 看黄网站在线| 成人黄色在线免费观看| 亚洲一区欧美激情| 9.1片黄在线观看| 欧美日韩一区中文字幕| 国产熟女高潮一区二区三区| 亚洲欧洲综合另类在线| 东京干手机福利视频| 51久久精品夜色国产麻豆| 日韩精品91| 欧美做受高潮中文字幕| 色综合天天天天做夜夜夜夜做| 午夜国产福利在线| 国产精品二区三区| 日韩精品亚洲专区| 加勒比婷婷色综合久久| 精品视频久久久久久久| 久久福利在线| 国产一区 在线播放| 久久精品这里都是精品| 国产99视频在线| 日本韩国在线不卡| 欧美一区影院| 亚洲一区二区三区日韩| 精品少妇一区二区三区| 电影亚洲精品噜噜在线观看| 欧洲金发美女大战黑人| 久久综合九色综合欧美98| 亚洲天堂一二三| 欧美在线免费看| 欧美精品国产一区|