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

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


咨詢
建站咨詢
