服務端語言:nodeJs;javascript
const _redis = require("redis");//引入redis /* 注意:若是redis-server與nodejs客戶端都在本地,下列可寫成 * client = redis.createClient();不然要對括號內容進行更改*/ const client = _redis.createClient(6379,'127.0.0.1'); //括號內容對應:端口號,主機 client.on("error", function (err) { console.log("Error :" , err); //錯誤檢測 }); client.on('connect', function(){ console.log('Redis鏈接成功.'); }) const redis = (function(){ var mod ={}; // set get部分 mod.set = function(_key, value, expire, callback){ client.set(_key, value, function(err, result){ if (err) { console.log(err); return; } if (!isNaN(expire) && expire > 0) { client.expire(_key, parseInt(expire)); } if(callback){ callback(result); } }) }; mod.get = function(_key, callback){ client.get(_key, function(err,result){ if (err) { console.log(err); callback(err,null) return; } if(callback){ callback(result); } }) }; // 查找全部的hkeys mod.hkeys=function(_key,eve){ client.hkeys(_key, function (err, replies) { if(!err){ eve(replies); client.quit(); } }); }; // hset hget部分 mod.hset = function(_key,key2,value,callback){ client.hset(_key,key2,value); }; mod.hgetall = function(_key, callback){ client.hgetall(_key,function(err,result){ if (!err) { callback(result) return; } }); }; mod.hget = function(_key,key2,callback){ client.hget( hashkey,_key, function(err, result){ if(!err){ callback(result); } else{ throw err }; } ) }; return mod })()
redis.set("usern ame5","sadasdas");//set值 redis.get("usern ame5",function(result){ console.log("get:"+result)// get:sadasdas }); redis.hset("hash key","sadasdas",1528231340153)//hset值 redis.hset("hash key","sadasdadds","152823134asd0153") //hset值 redis.hget("hash key","sadasdas",function(result){ console.log("hash key get:") console.log(result)//1528231340153 }) redis.hgetall("hash key",function(result){ console.log("hash key get:") console.log(result)//{ sadasdas: '1528231340153',sadasdadds: '152823134asd0153' } }) redis.hkeys("hash key",function(result){ console.log("hash key keys:"+result)//hash key keys:sadasdas,sadasdadds })
假設新開一所學校java
set/get方法存儲的是單個數據,至關於往學校裏面塞入一個學生,查找的時候所有集合到一塊兒,點名找出來。node
hset/hget 存儲的是一個數據對象,至關於在學校塞入學生的時候,肯定好了班級,查找的時候,先找到班級再找學生。git
對於大量數據而言 hset/hget 要優於 set/get。github
網上都是瞎扯淡,只有權威值得相信:https://github.com/NodeRedis/node_redisredis