相关疑难解决方法(0)

检查redis是否正在运行 - > node js

我只是想知道,在我的NodeJS流程开始时,是否启动了Redis(因此用户会话将被存储或不存储).

这就是我现在所拥有的:

var session = require('express-session');
var RedisStore = require('connect-redis')(session);
var redis = require("redis");
var client = redis.createClient(global.redis.host, global.redis.port);

// Check if redis is running
var redisIsReady = false;
client.on('error', function(err) {
    redisIsReady = false;
    console.log('redis is not running');
    console.log(err);
});
client.on('ready', function() {
    redisIsReady = true;
    console.log('redis is running');
});

// Here I use express-session, but I want to set a store only if redis is ready
    sessOptions = {
        [...]
    }
    // Store setting
    if (redisIsReady) {
        sessOptions.store …
Run Code Online (Sandbox Code Playgroud)

session redis node.js express express-4

9
推荐指数
4
解决办法
1万
查看次数

节点JS Redis客户端连接重试

目前我使用https://github.com/mranney/node_redis作为我的节点redis客户端.

client.retry_delay 默认设置为250毫秒.

我尝试连接到redis,一旦连接成功,我手动停止redis服务器以查看client.retry_delay是否有效.但我没有看到它有效.

将记录以下日志消息ready以及end使用createClient创建的redisClients 上的事件

[2012-03-30 15:13:05.498] [INFO] Development - Node Application is running on port 8090
[2012-03-30 15:13:08.507] [INFO] Development - Connection Successfully Established to  '127.0.0.1' '6379'
[2012-03-30 15:16:33.886] [FATAL] Development - Connection Terminated to  '127.0.0.1' '6379'
Run Code Online (Sandbox Code Playgroud)

当服务器重新启动时,我没有再看到成功消息[就绪事件未被触发]

我错过了什么吗?何时使用重试常数?是否有工作来查找redis服务器是否在节点发生故障后出现?

redis node.js

3
推荐指数
1
解决办法
8506
查看次数

标签 统计

node.js ×2

redis ×2

express ×1

express-4 ×1

session ×1