最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

nodejs使用redis封装缓存的方法

来源:懂视网 责编:小采 时间:2020-11-27 19:55:36
文档

nodejs使用redis封装缓存的方法

nodejs使用redis封装缓存的方法:这次给大家带来nodejs使用redis封装缓存的方法,nodejs使用redis封装缓存的注意事项有哪些,下面就是实战案例,一起来看一下。 之前在node下使用redis作为缓存介质,对redis进行了一层封装 First: 安装npm包 redisconst redis = requ
推荐度:
导读nodejs使用redis封装缓存的方法:这次给大家带来nodejs使用redis封装缓存的方法,nodejs使用redis封装缓存的注意事项有哪些,下面就是实战案例,一起来看一下。 之前在node下使用redis作为缓存介质,对redis进行了一层封装 First: 安装npm包 redisconst redis = requ

这次给大家带来nodejs使用redis封装缓存的方法,nodejs使用redis封装缓存的注意事项有哪些,下面就是实战案例,一起来看一下。

之前在node下使用redis作为缓存介质,对redis进行了一层封装

First: 安装npm包 redis

const redis = require('redis');

Second: 进行封装

// cache.js
const redis = require('redis');
const config = require('config');
const logger = require('winston');
const redisObj = {
 client: null,
 connect: function () {
 this.client = redis.createClient(config.redis);
 this.client.on('error', function (err) {
 logger.error('redisCache Error ' + err);
 });
 this.client.on('ready', function () {
 logger.info('redisCache connection succeed');
 });
 },
 init: function () {
 this.connect(); // 创建连接
 const instance = this.client;
 // 主要重写了一下三个方法。可以根据需要定义。
 const get = instance.get;
 const set = instance.set;
 const setex = instance.setex;
 instance.set = function (key, value, callback) {
 if (value !== undefined) {
 set.call(instance, key, JSON.stringify(value), callback);
 }
 };
 instance.get = function (key, callback) {
 get.call(instance, key, (err, val) => {
 if (err) {
 logger.warn('redis.get: ', key, err);
 }
 callback(null, JSON.parse(val));
 });
 };
 // 可以不用传递expires参数。在config文件里进行配置。
 instance.setex = function (key, value, callback) {
 if (value !== undefined) {
 setex.call(instance, key, config.cache.maxAge, JSON.stringify(value), callback);
 }
 };
 return instance;
 },
};
// 返回的是一个redis.client的实例
module.exports = redisObj.init();

How to use

const cache = require('./cache');
cache.get(key, (err, val) => {
 if (val) {
 // do something
 } else {
 // do otherthing
 }
});
cache.set(key, val, (err, res) => {
 // do something
});
cache.setex(key, val, (err, res) => {
 // do something
})

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

VUE+UEditor图片跨域上传怎样实现

在vue项目中怎样使用上传组件

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

nodejs使用redis封装缓存的方法

nodejs使用redis封装缓存的方法:这次给大家带来nodejs使用redis封装缓存的方法,nodejs使用redis封装缓存的注意事项有哪些,下面就是实战案例,一起来看一下。 之前在node下使用redis作为缓存介质,对redis进行了一层封装 First: 安装npm包 redisconst redis = requ
推荐度:
标签: 缓存 js 封装
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top