亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

詳解redis在nodejs中的應用

2019-11-19 13:55:58
字體:
來源:轉載
供稿:網友

redis是一個性能非常好的內存數據庫,部署在應用程序和mysql數據中間做緩存數據庫,可以極大的提升應用程序的性能,這里簡單介紹nodejs客戶端操作redis的demo程序

redis里面總共可以存儲5種數據類型,分別是字符串,列表、集合、三列、有序集合;這里將會對這5種數據類型的增刪查改一一處理;

1、redis在mac上的安裝:

https://redis.io/download,當前我用的版本穩定版本是4.0.9,解壓之后,進入redis-4.0.9目錄,執行make && sudo make install,稍等幾分鐘就可以安裝好;

2、redis啟動:

命令行執行 redis-server即可啟動,默認端口是6379;

3、安裝nodejs客戶端:

創建redis-node目錄,在該目錄下yarn init -y之后,執行命令:yarn add redis 即可安裝nodejs的redis客戶端,參考文檔:https://github.com/NodeRedis/node_redis

4、在redis-node目錄下,終端上執行node,即可在終端上響應式的執行nodejs代碼,用做測試,下面開始demo程序

首先要創建客戶端,并連接redis服務器,在執行以下連接客戶端代碼之前,請確保已經運行了redis服務器:終端商執行redis-server即可,默認端口6379;

const redis = require('redis');const client = redis.createClient(); //默認連接localhost:6379,具體配置參數可以參考文檔https://github.com/NodeRedis/node_redis

如果一切順利,我們就已經創建好了連接redis服務器的客戶端,后續操作都是在client對象上進行。

一、字符串類型

雖然說是字符串類型,但是可以存儲的數據包括字符串、整數以及浮點數。

var res = client.set('name', 'abczhijia', (err, data) => { console.log('err: ', err, ' data: ', data);}); // err: null data: OK,res的值是trueclient.get('name', (err, data) => { console.log('err: ', err, ' data: ', data);}); // err: null data: abczhijia

為了簡單起見,我們定義一個回調函數,用于輸出數據:

const cb = (err, data) => { console.log('err: ', err, ' data: ', data, ' data type: ', typeof data);}

下面再針對整數做一個測試:

client.set('age', 20, cb); //err: null data: OK data type: stringclient.get('age', cb); //err: null data: 20 data type: string

可以看出,雖然設置的是整數,輸出來的時候,其實還是字符串,所以如果要進行計算,需要自己在回調函數里面做轉換

二、列表數據類型

//從右側推入client.rpush('friends', 'mike', 'jhon', cb); //err: null data: 2 data type: numberclient.lrange('friends', 0, -1, cb); //err: null data: [ 'mike', 'jhon' ] data type: object//從左側推入client.lpush('friends', 'sam', 'bob', cb); //err: null data: 4 data type: numberclient.lrange('friends', 0, -1, cb); // err: null data: [ 'bob', 'sam', 'mike', 'jhon' ] data type: object//從右側彈出client.rpop('friends', cb); //err: null data: jhon data type: string//從左側彈出client.lpop('friends', cb); //err: null data: bob data type: string//打印看看發生了啥client.lrange('friends', 0, -1, cb); // err: null data: [ 'sam', 'mike' ] data type: object//查看索引位置的值client.lindex('friends', 0, cb); // err: null data: sam data type: string//對列表進行裁剪client.rpush('friends', 'tom', 'bryant', cb)// err: null data: 4 data type: numberclient.ltrim('friends', 1, 2, cb); //err: null data: OK data type: stringclient.lrange('friends', 0, -1, cb); //err: null data: [ 'mike', 'tom' ] data type: object

這里注意,列表的操作可以從右邊rpush推入一個或者多個數據,也可以從左邊lpush推入一個或多個數據;另外,取值的時候,需要指明需要起止位置,如果要獲取整個,可以把結束位置寫成-1。

三、集合數據類型

//往集合ids中加幾個元素client.sadd('ids', 1, 2, cb); //err: null data: 2 data type: number//查看集合元素client.smembers('ids', cb); //err: null data: [ '1', '2' ] data type: object//從集合中刪除元素client.srem('ids', 2, cb); // err: null data: 1 data type: number//看看發生了啥client.smembers('ids', cb); //err: null data: [ '1' ] data type: object//看看集合有多少個元素client.scard('ids', cb); //err: null data: 1 data type: number//再加幾個元素進去client.sadd('ids', 3, 5, 8, 9); ////判斷元素是否在集合內client.sismember('ids', 8, cb); // err: null data: 1 data type: numberclient.sismember('ids', 80, cb); //err: null data: 0 data type: number

四、散列數據類型

//往散列上添加多組鍵值對client.hmset('phone', 'price', 5888, 'name', 'iphonex', cb); //err: null data: OK data type: string//查看多個鍵的值client.hmget('phone', 'price', 'name', cb); //err: null data: [ '5888', 'iphonex' ] data type: object//查看鍵值對的數量client.hlen('phone', cb); //err: null data: 2 data type: number//刪掉其中一個鍵值對client.hdel('phone', 'price', cb); //err: null data: 1 data type: number//看看price是否還在?client.hmget('phone', 'price', cb); //err: null data: [ null ] data type: object,原來只留下了null//再加幾個屬性client.hmset('phone', 'vendor', 'apple', 'madein', 'china', cb);//取出所有的鍵值對client.hgetall('phone', cb); //err: null data: { name: 'iphonex', vendor: 'apple', madein: 'china' } data type: object//取出所有的鍵client.hkeys('phone', cb); //err: null data: [ 'name', 'vendor', 'madein' ] data type: object//取出所有的值client.hvals('phone', cb); //err: null data: [ 'iphonex', 'apple', 'china' ] data type: object//判斷鍵是否存在client.hexists('phone', 'name', cb); //err: null data: 1 data type: numberclient.hexists('phone', 'price', cb); //err: null data: 0 data type: number

五、有序集合數據類型

有序集合會復雜一點,但是可以完成很好的應用程序效果,源碼地址:https://github.com/abczhijia/redis-node

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲综合日韩中文字幕v在线| 亚洲大胆人体视频| 亚洲美女黄色片| 91夜夜未满十八勿入爽爽影院| 欧美极度另类性三渗透| 亚洲一区二区三区香蕉| 51午夜精品视频| 91久久精品一区| 亚洲国产成人在线播放| 久久成人精品视频| 欧美激情视频在线免费观看 欧美视频免费一| 欧美在线激情网| 这里只有精品在线观看| 国产日韩中文字幕在线| 欧美日韩亚洲一区二区三区| 精品人伦一区二区三区蜜桃免费| 国产亚洲一级高清| 亚洲欧美精品中文字幕在线| 欧美成人中文字幕在线| 欧美日韩国产激情| 欧美性精品220| 久久久久久久91| 亚洲人成电影网站色xx| 亚洲男人第一网站| 精品亚洲国产成av人片传媒| 日韩免费不卡av| 国产精品老牛影院在线观看| 91av在线免费观看视频| 精品国产电影一区| 最新日韩中文字幕| 亚洲国产精品美女| 国产中文字幕日韩| 91高潮精品免费porn| 日韩av网站电影| 一本色道久久综合狠狠躁篇的优点| 色综合五月天导航| 98精品在线视频| 国产视频精品一区二区三区| 久久久久久久久久久成人| 日韩欧美国产黄色| 欧洲s码亚洲m码精品一区| 国产ts人妖一区二区三区| 国产一区二区三区精品久久久| 人人做人人澡人人爽欧美| 欧美性猛交xxxx免费看久久久| 秋霞av国产精品一区| 亚洲男人天堂古典| 亚洲第一精品夜夜躁人人爽| 欧美老肥婆性猛交视频| 国产欧美日韩亚洲精品| 欧美成年人视频网站欧美| 亚洲一区二区中文| 国内精品一区二区三区四区| 日韩欧美国产激情| 久久久国产精品视频| 久久免费视频观看| 性欧美xxxx视频在线观看| 日韩电影中文字幕av| 中文字幕在线日韩| 亚洲天堂av图片| 久久男人av资源网站| 久久精品影视伊人网| 日韩电影大片中文字幕| 国产在线精品播放| 91精品视频免费观看| 久久久久久亚洲精品| 午夜精品久久久久久久99黑人| 一区二区欧美久久| 久久伊人色综合| 日韩在线观看免费全集电视剧网站| 国产欧美精品一区二区三区介绍| 91在线免费网站| 亚洲国产美女久久久久| 精品爽片免费看久久| 日韩av大片在线| 成人午夜小视频| 日韩综合视频在线观看| 91av在线精品| 91理论片午午论夜理片久久| 亚洲精品99久久久久中文字幕| 欧美极品少妇xxxxⅹ裸体艺术| 欧美激情精品久久久久久久变态| 欧美亚洲日本网站| 亚洲视频在线免费看| 国产日本欧美一区二区三区在线| 国产精品91在线观看| 亚洲欧洲国产一区| 91av视频在线免费观看| 日韩国产精品亚洲а∨天堂免| 日韩成人av网址| 97超级碰碰碰久久久| 亚洲国产成人在线播放| xvideos亚洲| 久久99久久亚洲国产| 川上优av一区二区线观看| 久久久影视精品| 色妞久久福利网| 国产精品美女呻吟| 91成人免费观看网站| 91精品啪在线观看麻豆免费| 亚洲人av在线影院| 亚洲美女视频网站| 国外日韩电影在线观看| 中文字幕v亚洲ⅴv天堂| 亚洲经典中文字幕| 色999日韩欧美国产| 亚洲a级在线播放观看| 久久久电影免费观看完整版| 亚洲高清色综合| 欧美重口另类videos人妖| 亚洲激情在线观看| 97视频在线观看免费| 在线播放国产一区中文字幕剧情欧美| 国产精品自拍偷拍视频| 精品一区二区三区电影| 国产精品久久久久久久久久免费| 亚洲欧洲在线播放| 亚洲乱码av中文一区二区| 亚洲一区二区三区视频| 国产91在线播放九色快色| 日韩av有码在线| 欧美激情小视频| 亚洲欧美日韩国产中文专区| 91夜夜未满十八勿入爽爽影院| 色悠久久久久综合先锋影音下载| 中文字幕欧美精品日韩中文字幕| 性色av一区二区三区红粉影视| 亚洲第一视频网| 欧美一级视频一区二区| 日韩的一区二区| 午夜精品一区二区三区av| 精品久久久久国产| 人人做人人澡人人爽欧美| 欧美在线视频播放| 日韩av三级在线观看| 国产v综合ⅴ日韩v欧美大片| 亚洲免费av网址| 在线性视频日韩欧美| 成人免费观看a| 国产91免费观看| 国产不卡一区二区在线播放| 久久97久久97精品免视看| 欧美一区二区三区精品电影| 欧美www视频在线观看| 亚洲免费视频在线观看| 日韩精品免费看| 青青草原成人在线视频| 日韩成人在线免费观看| 亚洲第一二三四五区| 亚洲国产精品人人爽夜夜爽| 中文字幕日韩精品在线| 亚洲欧洲国产伦综合| 欧美日韩福利电影| 中文字幕亚洲国产| 成人性教育视频在线观看| 国产日韩欧美自拍| 国产精品免费一区| 欧美日韩国产综合新一区| 麻豆一区二区在线观看| 欧美激情精品在线| 成人中文字幕+乱码+中文字幕| 国产精品久久久久77777| 中文字幕亚洲综合| 国产一区二区三区丝袜|