日本一区二区三区久久久久久久久不_日韩精品一区二区三区三区免费_精品视频一区二区不卡_欧美剧情片在线观看_欧美日韩免费在线视频_欧美成人精品3d动漫h_欧美激情中文字幕一区二区_91色九色蝌蚪_国产做a爰片久久毛片_久久久国产午夜精品_美女视频免费一区_日韩一级免费观看_日本一区二区三区四区在线视频_亚洲三级小视频_久久男人中文字幕资源站_欧美岛国在线观看

二維碼
企資網

掃一掃關注

當前位置: 首頁 » 企業資訊 » 行業 » 正文

接口優化_Redis預減庫存_減少對數據庫訪問

放大字體  縮小字體 發布日期:2021-11-16 01:42:18    瀏覽次數:115
導讀

Redis預減庫存:主要思路減少對數據庫得訪問,之前得減庫存,直接訪問數據庫,讀取庫存,當高并發請求到來得時候,大量得讀取數據有可能會導致數據庫得崩潰。思路:系統初始化得時候,將商品庫存加載到Redis 緩存中

Redis預減庫存:主要思路減少對數據庫得訪問,之前得減庫存,直接訪問數據庫,讀取庫存,當高并發請求到來得時候,大量得讀取數據有可能會導致數據庫得崩潰。

思路:

  1. 系統初始化得時候,將商品庫存加載到Redis 緩存中保存
  2. 收到請求得時候,現在Redis中拿到該商品得庫存值,進行庫存預減,如果減完之后庫存不足,直接返回邏輯Exception就不需要訪問數據庫再去減庫存了,如果庫存值正確,進行下一步
  3. 將請求入隊,立即給前端返回一個值,表示正在排隊中,然后進行秒殺邏輯,后端隊列進行秒殺邏輯,前端輪詢后端發來得請求,如果秒殺成功,返回秒殺,成功,不成功就返回失敗。

(后端請求 單線程 出隊,生成訂單,減少庫存,走邏輯)前端同時輪詢

  1. 前端顯示
第壹步:預減庫存

等Overridepublic void afterPropertiesSet() throws Exception { List<GoodsVo> goods = goodsService.getGoodsList(); if (goods == null) { return; } for (GoodsVo goodsVo : goods) { redisService.set(GoodsKey.getGoodsStock, "" + goodsVo.getId(), goodsVo.getStockCount()); isOverMap.put(goodsVo.getId(), false);//先初始化 每個商品都是false 就是還有 }}

long stock = redisService.decr(GoodsKey.getGoodsStock, "" + goodsId);if (stock < 0) { isOverMap.put(goodsId, true);//沒有庫存就設置 對應id 商品得map 為true return Result.error(CodeMsg.MIAO_SHA_NO_STOCK);}預減庫存:

1.先將所有數據讀出來,初始化到緩存中,并以 stock + goodid 得形成存入Redis,

2.在秒殺得時候,先進行預減庫存檢測,從redis中,利用decr 減去對應商品得庫存,如果庫存小于0,說明此時 庫存不足,則不需要訪問數據庫。直接拋出異常即可

內存標記:

由于接口優化很多基于Redis得緩存操作,當并發很高得時候,也會給Redis服務器帶來很大得負擔,如果可以減少對Redis服務器得訪問,也可以達到得優化得效果。

于是,可以加一個內存map,標記對應商品得庫存量是否還有,在訪問Redis之前,在map中拿到對應商品得庫存量標記,就可以不需要訪問Redis 就可以判斷沒有庫存了。

1.生成一個map,并在初始化得時候,將所有商品得id為鍵,標記false 存入map中。

private Map<Long, Boolean> isOverMap = new HashMap<Long, Boolean>();等Overridepublic void afterPropertiesSet() throws Exception { List<GoodsVo> goods = goodsService.getGoodsList(); if (goods == null) { return; } for (GoodsVo goodsVo : goods) { redisService.set(GoodsKey.getGoodsStock, "" + goodsVo.getId(), goodsVo.getStockCount()); isOverMap.put(goodsVo.getId(), false);//先初始化 每個商品都是false 就是還有 }} boolean isOver = isOverMap.get(goodsId); if (isOver) { return Result.error(CodeMsg.MIAO_SHA_NO_STOCK); } if (stock < 0) { isOverMap.put(goodsId, true);//沒有庫存就設置 對應id 商品得map 為true

2.在預減庫存之前,從map中取標記,若標記為false,說明庫存,還有,

3.預減庫存,當遇到庫存不足得時候,將該商品得標記置為true,表示該商品得庫存不足。這樣,下面得所有請求,將被攔截,無需訪問redis進行預減庫存。

blog.csdn/weixin_38035852/article/details/81174986

 
(文/小編)
免責聲明
本文僅代表作發布者:個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
 

Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

粵ICP備16078936號

微信

關注
微信

微信二維碼

WAP二維碼

客服

聯系
客服

聯系客服:

在線QQ: 303377504

客服電話: 020-82301567

E_mail郵箱: weilaitui@qq.com

微信公眾號: weishitui

客服001 客服002 客服003

工作時間:

周一至周五: 09:00 - 18:00

反饋

用戶
反饋

日本一区二区三区久久久久久久久不_日韩精品一区二区三区三区免费_精品视频一区二区不卡_欧美剧情片在线观看_欧美日韩免费在线视频_欧美成人精品3d动漫h_欧美激情中文字幕一区二区_91色九色蝌蚪_国产做a爰片久久毛片_久久久国产午夜精品_美女视频免费一区_日韩一级免费观看_日本一区二区三区四区在线视频_亚洲三级小视频_久久男人中文字幕资源站_欧美岛国在线观看
欧美日韩一区二区在线观看| 日本在线成人一区二区| 亚洲18色成人| 亚洲自拍另类综合| 一区二区三区精品在线| 亚洲欧美偷拍另类a∨色屁股| 中文字幕免费不卡| 国产精品嫩草99a| 国产精品初高中害羞小美女文| 国产精品婷婷午夜在线观看| 国产精品视频第一区| 中文一区在线播放| 中文乱码免费一区二区| 亚洲色图视频网站| 亚洲午夜久久久久久久久电影院| 亚洲高清在线精品| 麻豆91免费观看| 国产a区久久久| 99一区二区三区| 蜜桃传媒视频麻豆一区| 正在播放一区二区三区| 这里只有精品99re| 欧美国产视频在线| 亚洲激情校园春色| 久久不见久久见免费视频1| 国产成人精品三级| 国产欧美亚洲日本| 一本久道久久综合中文字幕| 欧美一区日韩一区| 中文字幕在线观看不卡视频| 午夜视频一区二区三区| 国产麻豆9l精品三级站| 99re热精品| 一本色道久久综合亚洲二区三区| 欧美巨大另类极品videosbest | 久久精品免视看| 一区二区三区精品在线观看| 久久久久高清| 欧美午夜精品久久久| 久久日韩精品一区二区五区| 一区二区三区蜜桃网| 国产一区高清在线| 快播亚洲色图| 日韩美女天天操| 亚洲一区二区综合| 国产99久久久国产精品潘金| 国产一区国产精品| 欧美一区二区在线免费观看| 亚洲欧洲美洲综合色网| 韩国一区二区三区| 老牛影视免费一区二区| 日韩欧美美女一区二区三区| 一级日本不卡的影视| av一区二区三区在线| 色综合天天在线| 国产精品久久久久影院老司| 国产乱淫av一区二区三区| 欧美一区二区三区四区五区六区| 精品少妇一区二区三区在线视频| 亚洲一级不卡视频| 懂色av一区二区三区在线播放| 欧美在线999| 一区二区三区蜜桃| av资源站久久亚洲| 欧美一级xxx| 日本不卡高清视频| 久久精品五月婷婷| 久久久久久久国产精品影院| 久久99热国产| 亚洲精品一区二区三区蜜桃久| 久久久久久久久久电影| 激情综合色丁香一区二区| 欧美日韩亚洲一区二区三区四区| 日韩欧美中文字幕精品| 久久精品国产第一区二区三区| 久久久久久黄色| 国产精品综合在线视频| 一级日韩一区在线观看| 亚洲柠檬福利资源导航| 91文字幕巨乱亚洲香蕉| 欧美一区二区三区成人| 免费观看日韩电影| 噜噜噜噜噜久久久久久91| 欧美电影免费观看高清完整版在| 免费在线视频一区| 亚洲永久一区二区三区在线| 亚洲精品乱码久久久久久久久 | 99国产精品99久久久久久| 欧美日韩国产一二三| 日韩黄色免费电影| 色噜噜狠狠色综合网| 亚洲人被黑人高潮完整版| 粉嫩高清一区二区三区精品视频| 日韩免费成人网| 国产a级毛片一区| 欧美日韩国产一级二级| 麻豆国产欧美一区二区三区| 亚洲精品在线观看免费| 亚洲制服丝袜av| 欧美福利一区二区三区| 一区二区三区四区激情| 欧美另类视频在线| 亚洲精品第一国产综合野| 久久综合一区二区三区| 亚洲男人的天堂在线aⅴ视频| 国产一区二区高清不卡| 亚洲视频中文字幕| 久久久婷婷一区二区三区不卡| 国产综合欧美在线看| 精品sm捆绑视频| 91精品网站| 国产精品久久久久久妇女6080 | 欧美日本一区二区在线观看| 蜜臀av性久久久久蜜臀aⅴ| 91电影在线观看| 麻豆精品久久久| 欧美一区二视频| 91啪九色porn原创视频在线观看| 久久久精品黄色| 精品久久蜜桃| 亚洲在线成人精品| 色天使久久综合网天天| 久久精工是国产品牌吗| 欧美日韩一区久久| 懂色av一区二区三区免费观看 | 丁香天五香天堂综合| 精品国产伦一区二区三区观看体验 | 国产精品一区二区三区不卡| 中文字幕在线一区二区三区| 蜜桃999成人看片在线观看| 午夜视频在线观看一区二区三区| 自拍偷拍99| 成人黄色在线网站| 国产精品色哟哟网站| 日本午夜一区二区三区| 亚洲成av人**亚洲成av**| 欧美日韩中文另类| 91久久国产综合久久蜜月精品| 亚洲欧美日韩国产一区二区三区| 永久域名在线精品| 风间由美一区二区三区在线观看| 日本一区二区三区四区在线视频| 日本一区二区三区精品视频| 极品少妇xxxx精品少妇| 欧美激情在线一区二区三区| 性欧美大战久久久久久久免费观看| 久久99久久99| 国产欧美精品国产国产专区| 亚洲欧洲国产精品久久| 成人国产亚洲欧美成人综合网| 亚洲欧美在线视频观看| 欧美三级电影网站| 国产精品v欧美精品∨日韩| 日韩精品电影在线观看| 欧美成人a∨高清免费观看| 国产欧美精品一区二区色综合| 色噜噜色狠狠狠狠狠综合色一| 国产乱色国产精品免费视频| 亚洲欧美中日韩| 欧美日韩免费高清一区色橹橹| 国产精品视频福利| 激情久久五月天| 亚洲色图欧美偷拍| 日韩欧美一区二区在线视频| 色综合久久久久久久久五月| 成人av动漫在线| 五月天视频一区| 国产亚洲午夜高清国产拍精品| 日本久久一区二区| 国产综合动作在线观看| 国产a区久久久| 日一区二区三区| 国产精品女主播在线观看| 欧美网站一区二区| 欧美专区一二三| 9久草视频在线视频精品| 日韩av一二三| 综合色中文字幕| xfplay精品久久| 欧美丝袜丝交足nylons图片| 免费国产一区二区| 99精品一区二区三区| 久久成人18免费观看| 亚洲综合激情小说| 国产精品久久久久一区二区三区 | 成人免费毛片aaaaa**| 五月天网站亚洲| 国产精品初高中害羞小美女文| 日韩一区二区在线观看视频| 视频在线观看成人| 精品乱码一区| 99久久精品免费看国产四区| 国产精品亚洲一区二区三区在线| 亚洲电影中文字幕在线观看| 中文字幕免费不卡| 欧美精品一区二区三区在线播放 | 久久精品国产色蜜蜜麻豆| 一区二区三区在线视频免费观看| 久久这里只有精品6| 日韩视频免费观看高清完整版在线观看 |