Node.js Redis超时错误
谁能告诉我这个测试代码有什么问题吗?这个程序一开始运行得很好,但在几个小时不使用后,不可避免地会出现Redis超时错误。注意,我已经将这篇文章中的redis主机和密码更改为虚假信息 注意,无论我使用node redis还是iris redis驱动程序,我都会遇到相同的错误Node.js Redis超时错误,node.js,redis,node-redis,Node.js,Redis,Node Redis,谁能告诉我这个测试代码有什么问题吗?这个程序一开始运行得很好,但在几个小时不使用后,不可避免地会出现Redis超时错误。注意,我已经将这篇文章中的redis主机和密码更改为虚假信息 注意,无论我使用node redis还是iris redis驱动程序,我都会遇到相同的错误 var express = require('express'); var app = express(); // Redis Data Store var redis = require("iris-redis"); va
var express = require('express');
var app = express();
// Redis Data Store
var redis = require("iris-redis");
var client = redis.createClient( 6379, "nodejitsudb5555563948.redis.irstack.com");
client.auth("fehehyrj971946ef332e975fbebb4");
client.on("ready", function() {
client.iris_config(function(er, config) {
if(er) throw er;
console.log("Got my server config: %j", config)
// client.quit()
});
});
// Define a test route
app.get('/test', function(req, res) {
client.incr("seq:test", function(err, reply) {
console.log("Incremented redis counter: " + reply);
var body = "Incremented Redis Counter: " + reply;
res.setHeader('Content-Type', 'text/plain');
res.setHeader('Content-Length', body.length);
res.end(body);
});
});
app.listen(8001);
console.log('Listening on port 8001');
您的
redis服务器上可能没有将timeout
设置为0
。如果您的应用程序长时间处于空闲状态,您应该将超时设置为0
。您可以检查配置文件或通过redis cli使用以下内容:
CONFIG GET timeout
CONFIG SET timeout 0
如果这已经在生产服务器上,并且一段时间内不允许将其放下,则可以执行以下操作,使用redis cli动态设置redistimeout
:
CONFIG GET timeout
CONFIG SET timeout 0
然后别忘了在redis配置文件上设置以下行:
timeout 0
您的redis服务器上可能没有将timeout
设置为0
。如果您的应用程序长时间处于空闲状态,您应该将超时设置为0
。您可以检查配置文件或通过redis cli使用以下内容:
CONFIG GET timeout
CONFIG SET timeout 0
如果这已经在生产服务器上,并且一段时间内不允许将其放下,则可以执行以下操作,使用redis cli动态设置redistimeout
:
CONFIG GET timeout
CONFIG SET timeout 0
然后别忘了在redis配置文件上设置以下行:
timeout 0
您的redis服务器上的CONFIG GET timeout的输出是什么?您的redis服务器上的CONFIG GET timeout的输出是什么?