摘要:命令命令用于移除并返回列表的第一個(gè)元素。具有原子性下面是用寫(xiě)的一個(gè)簡(jiǎn)單將商品庫(kù)存加入列表默認(rèn)庫(kù)存為獲取當(dāng)前庫(kù)存列隊(duì)的長(zhǎng)度剩余可預(yù)訂創(chuàng)建訂單執(zhí)行創(chuàng)建訂單操作搶購(gòu)成功庫(kù)存不足創(chuàng)建失敗已經(jīng)搶光了哦檢查庫(kù)存
使用到 redis-list
llen 命令:獲取列表的長(zhǎng)度,如果列表key不存在那么也是返回0,如果給的key不是一個(gè)列表類型會(huì)返回一個(gè)錯(cuò)誤
lpush命令:將值插入到列表頭部,如果 key 不存在,一個(gè)空列表會(huì)被創(chuàng)建并執(zhí)行 LPUSH 操作。 當(dāng) key 存在但不是列表類型時(shí),返回一個(gè)錯(cuò)誤。
lpop命令:命令用于移除并返回列表的第一個(gè)元素。(具有原子性)
下面是用laravel寫(xiě)的一個(gè)簡(jiǎn)單democheckStore()) { //TODO 執(zhí)行創(chuàng)建訂單操作 return "搶購(gòu)成功"; } else { //TODO 庫(kù)存不足創(chuàng)建失敗 return "已經(jīng)搶光了哦"; } } /** * 檢查庫(kù)存 */ private function checkStore() { return Redis::lpop("goods_store"); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/29372.html
摘要:在大流量程序開(kāi)發(fā)中,必然會(huì)遇到高并發(fā)的應(yīng)用的場(chǎng)景。樂(lè)觀鎖實(shí)現(xiàn)秒殺功能它的優(yōu)點(diǎn)如下消息隊(duì)列對(duì)內(nèi)存消耗較大,個(gè)請(qǐng)求,需要操作出隊(duì)列。需要結(jié)合實(shí)際的業(yè)務(wù)場(chǎng)景嵌入本文的核心實(shí)現(xiàn)邏輯。 在大流量程序開(kāi)發(fā)中,必然會(huì)遇到高并發(fā)的應(yīng)用的場(chǎng)景。解決方案大致分為兩個(gè)方向,消息隊(duì)列、鎖 redis 實(shí)現(xiàn)消息隊(duì)列核心簡(jiǎn)單版本 $key = quque; /** ...
閱讀 3558·2021-08-31 09:39
閱讀 1866·2019-08-30 13:14
閱讀 2928·2019-08-30 13:02
閱讀 2777·2019-08-29 13:22
閱讀 2353·2019-08-26 13:54
閱讀 777·2019-08-26 13:45
閱讀 1595·2019-08-26 11:00
閱讀 989·2019-08-26 10:58