首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将redis云实例连接到牛队列?

如何将redis云实例连接到牛队列?
EN

Stack Overflow用户
提问于 2021-11-27 15:22:54
回答 1查看 519关注 0票数 1

我试图连接红色的免费云实例与公牛队列,但得到错误,因为它无法连接。

  1. I尝试了以下代码:

代码语言:javascript
复制
const Bull = require("bull");
const emailQueue = new Bull("email", {
  redis: "",
});

对于上面的代码,它给出了错误:连接ECONNREFUSED 127.0.0.1:6379消息。

  1. 也尝试过这样的方法:使用tls字段,但没有工作。

代码语言:javascript
复制
const Bull = require("bull");
const emailQueue = new Bull("email", {
   redis: {
     port: "",
     host: "",
     tls: { rejectUnauthorized: false },
   },
});

注意:我使用的是带有牛队列的redis免费云实例,还下载了redis insight桌面应用程序。我增加了数据库到redis洞察力桌面应用程序,它是连接的,但在节点应用程序,它是不工作的。我错过任何配置了吗?

EN

回答 1

Stack Overflow用户

发布于 2022-07-08 00:12:17

首先,您必须确保您的redis服务器在本地运行,因为您希望连接到127.0.0.1:6379。

其次,要获得可能存在的连接错误,可以尝试以下操作:

代码语言:javascript
复制
emailQueue.on('error', (error) => {
    console.log(error);
})

对我来说,连接本地Redis服务器没有问题,但我无法连接到远程Redis服务器,特别是Redis实验室和AWS ElasticCache。从错误消息中,我意识到我需要额外的身份验证,我只是为Redis实验室提供了主机、端口、用户名和密码,而我只需要为AWS ElasticCache提供主机、端口和密码,在我的env中保留用户名为空字符串。

代码语言:javascript
复制
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
    }
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70136108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档