如何在数据库断开连接时处理Redis会话
How to handle Redis session when db disconnects
我在Express App:中丢失用于会话的Redis连接时遇到问题
var RedisStore = require('connect-redis')(express);
sessionStore = new RedisStore(config.db.redis.connection);
sessionStore.client.on('error', function(err){
console.log("Redis error " + err);
});
app.use(express.session({
secret: config.secret,
maxAge: new Date(Date.now() + 3600000),
store: sessionStore
}));
当它关闭时,由于会话不再可用,网站也会关闭。我正在考虑回退到memoryStore或辅助数据库,但我想使用该回退,直到我可以再次重新连接为止(我不太担心会话丢失,只是不希望网站繁荣)。
我该怎么做?一个现有的插件将是伟大的,但到目前为止还没有找到任何东西。
您是否尝试过使用复制主从选项?如果master向下切换到slave,并且当master向上时,指向master。
您的应用程序应该检查主连接,如果它关闭了,它应该从从属服务器获取数据并恢复服务。
您可以让slave在同一台服务器或其他任何地方运行。
Redis被誉为最可靠的数据存储之一。与其试图设计一个失败的解决方案,我建议修复您的Redis。或者,使用像Redistogo这样的托管服务,每月7美元,应该几乎没有停机时间。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- keyup事件处理程序更改焦点不适用于快速键入
- 如何使用jquery处理php循环通过元素
- angular.js没有'无法在PhoneGap中处理视图标记
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 提示使用服务器端事件处理程序激活JavaScript
- javascript:如何在antlr生成的Lexer中进行错误处理
- 如何编写一个具有公共标头的批处理
- 在同一个服务工作者中处理service-worker.js有任何影响吗
- 如何处理node.js节点mongodb中的连接和查询队列
- 通过命令行/批处理文件打开页面时,将javascript代码注入Google Chrome
- 如何处理10页以上的静态页眉/页脚
- 将事件处理程序绑定到任何可能的事件
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- python到“;流“;字典处理
- 使用javascript进行实时图像处理
- 如何在数据库断开连接时处理Redis会话
- 对电子邮件(或用户名)进行哈希处理以存储在redis哈希桶中
- redis的处理能力;N'没有连接
- Node.js带有简单的redis应用程序抛出'未处理的错误'