我试图连接红色的免费云实例与公牛队列,但得到错误,因为它无法连接。
const Bull = require("bull");
const emailQueue = new Bull("email", {
redis: "",
});对于上面的代码,它给出了错误:连接ECONNREFUSED 127.0.0.1:6379消息。
const Bull = require("bull");
const emailQueue = new Bull("email", {
redis: {
port: "",
host: "",
tls: { rejectUnauthorized: false },
},
});注意:我使用的是带有牛队列的redis免费云实例,还下载了redis insight桌面应用程序。我增加了数据库到redis洞察力桌面应用程序,它是连接的,但在节点应用程序,它是不工作的。我错过任何配置了吗?
发布于 2022-07-08 00:12:17
首先,您必须确保您的redis服务器在本地运行,因为您希望连接到127.0.0.1:6379。
其次,要获得可能存在的连接错误,可以尝试以下操作:
emailQueue.on('error', (error) => {
console.log(error);
})对我来说,连接本地Redis服务器没有问题,但我无法连接到远程Redis服务器,特别是Redis实验室和AWS ElasticCache。从错误消息中,我意识到我需要额外的身份验证,我只是为Redis实验室提供了主机、端口、用户名和密码,而我只需要为AWS ElasticCache提供主机、端口和密码,在我的env中保留用户名为空字符串。
const {
REDIS_HOST,
REDIS_PORT,
REDIS_USERNAME,
REDIS_PASSWORD,
} = process.env
const emailQueue = new Queue('email', {
redis: {
port: REDIS_PORT,
host: REDIS_HOST,
username: REDIS_USERNAME,
password: REDIS_PASSWORD
}
});https://stackoverflow.com/questions/70136108
复制相似问题