Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、key-value数据库,并提供多种语言的API。

它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

性能极高 ,Redis读的速度是110000次/s,写的速度是81000次/s 。

本文以String类型的数据为例.主要是设置和获取值.

封装代码

redis.js

var db = {};
var redis = require("redis");
var client = redis.createClient();

client.on("error", function (err) {
  console.log("Error :" , err);
});

client.on('connect', function(){
  console.log('Redis连接成功.');
})

/**
 * 添加string类型的数据
 * @param key 键
 * @params value 值 
 * @params expire (过期时间,单位秒;可为空,为空表示不过期)
 * @param callBack(err,result)
 */
db.set = function(key, value, expire, callback){

	client.set(key, value, function(err, result){

		if (err) {
			console.log(err);
			callback(err,null);
			return;
		}

		if (!isNaN(expire) && expire > 0) {
			client.expire(key, parseInt(expire));
		}

		callback(null,result)
	})
}

/**
 * 查询string类型的数据
 * @param key 键
 * @param callBack(err,result)
 */
db.get = function(key, callback){

	client.get(key, function(err,result){

		if (err) {
			console.log(err);
			callback(err,null)
			return;
		}

		callback(null,result);
	});
}

module.exports = db;

使用

var db = require('./redis');
//设置值
db.set('test2', '封装方法', '100', function(err,result){
if (err) {
console.log(err);
return;
}
console.log('插入数据结果:', result);
})
//获取值
db.get('test2', function(err,result){
if (err) {
console.log(err);
return;
}
console.log(result);
})

测试结果



Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐