【发布时间】:2014-07-18 11:21:00
【问题描述】:
我已经阅读了 stackoverflow 上关于 ECONNREFUSED 错误的所有其他线程,但仍然没有任何效果。 目前我正在开发 Ubuntu 12.04.1 LTS
对于测试,我有这个非常简单的代码:
var redis = require("redis"),
client = redis.createClient(6379,"127.0.0.1");
redis.debug_mode = true;
client.on("connect", function () {
client.set("foo_rand000000000000", "some fantastic value");
});
但每当我启动它时,我得到的只是 ECONNREFUSED 错误:
root@oncn05:~/ba# node test.js
hiredis parser not installed.
Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED
at RedisClient.on_error (/root/ba/node_modules/redis/index.js:196:24)
at Socket.<anonymous> (/root/ba/node_modules/redis/index.js:106:14)
at Socket.emit (events.js:67:17)
at Array.0 (net.js:319:25)
at EventEmitter._tickCallback (node.js:192:41)
root@oncn05:~/ba#
事情是:用redis-cli连接redis是没问题的。
root@oncn05:~/ba# redis-cli
redis 127.0.0.1:6379>
此外,日志没有显示任何可疑之处。
为什么甚至说没有安装hiredis解析器?我用npm install hiredis 安装了它。但即使我没有。它甚至在哪里使用?
感谢每一个帮助。
【问题讨论】:
-
不将连接参数传递给
createClient时是否得到相同的结果? -
sudo netstat -nlp4显示什么?