新聞中心
卡券號碼:用Redis索引保存

成都創(chuàng)新互聯(lián)是一家專業(yè)提供南雄企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站制作、HTML5、小程序制作等業(yè)務(wù)。10年已為南雄眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
在開發(fā)電商上的折扣優(yōu)惠券等業(yè)務(wù)時(shí),我們需要用一些唯一的編碼(如卡券號碼)來標(biāo)識優(yōu)惠券。常見的做法是將一個(gè)大的字符串(比如20位的 十六進(jìn)制字符串)直接作為卡券號碼,但是這種做法不是很高效。如果希望在一個(gè)較短的時(shí)間內(nèi)檢索到相應(yīng)的卡券號碼,需要使用到數(shù)據(jù)庫索引,這樣可以非常大大地提高檢索速度。
以Redis為例,在使用Redis索引保存卡券號碼時(shí),我們可以使用String來存儲(chǔ),也可以使用Hash。如果使用String,我們可以將卡券號碼作為key,將優(yōu)惠券信息作為value存儲(chǔ),以便能夠很快的獲取卡券號碼的相關(guān)信息。而Hash則可以通過計(jì)算卡券號碼的hash值作為field,它的值為優(yōu)惠券信息,以便依據(jù)卡券號碼獲取相關(guān)信息。以下代碼以String存儲(chǔ)為例:
// redisStr 就是保存這張卡券號碼
let redisStr = `card_123_${Math.random()}`;
// 保存卡券號碼及優(yōu)惠券信息
awt redis.set(redisStr, JSON.stringify(coupon));
// 根據(jù)卡券號碼獲取信息
let couponString = awt redis.get(redisStr);
let coupon = JSON.parse(couponString);
除 Redis 之外,我們也可以使用NoSQL數(shù)據(jù)庫,如MongoDB,來保存卡券號碼。在MongoDB中,我們可以建立索引對需要快速查詢的字段,使用索引值來作為卡券號碼,這樣就能夠快速查詢到相關(guān)的卡券信息。
綜上,在使用卡券號碼標(biāo)識優(yōu)惠券信息時(shí),可以使用如Redis和MongoDB等NoSQL數(shù)據(jù)庫索引,使得可以在較短的時(shí)間內(nèi)檢索到相應(yīng)的卡券號碼及其附帶的優(yōu)惠券信息。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
文章名稱:卡券號碼用Redis索引保存(卡券號碼存redis)
分享URL:http://www.dlmjj.cn/article/cdscgco.html


咨詢
建站咨詢
