express的express-session默认是保存到内存中的,保存到内存不利于持久化,不利于分布式。
我们看看如果把session保存到redi中。
使用到的模块
- express
- express-session
- redis
- connect-redis
创建redis客户端
var client = redis.createClient(8000,‘10.10.10.10‘,{});client.auth(‘redis密码‘);
给客户端示例添加connect监听
client.on(‘connect‘, function() { ???console.log(‘connected‘);});
express-session默认配置
app.use(session({ ???resave: false, ???saveUninitialized: true, ????secret: ‘hubwiz app‘, //secret的值建议使用随机字符串 ???cookie: {maxAge: 60 * 1000 * 30} // 过期时间(毫秒)}));
使用connect-redis
app.use(session({ ???resave: false, ????saveUninitialized: true, ????secret: "hubwiz app", ???store: new RedisStore({ host: ‘10.10.10.10‘, port: 8000, client: client })}));
测试
client.set(‘sfsf‘, 1)client.get(‘sfsf‘, function(err, value) { ?if(err) console.log(err); ?else console.log(‘value‘, value);});
nodejs使用redis
原文地址:https://www.cnblogs.com/MyNodeJs/p/9699846.html