当前位置: 首页 > 面试题库 >

连接到Redis以与多个工作程序库一起使用时遇到麻烦

钱欣然
2023-03-14
问题内容

我在使用heroku中的kue连接到Redis来处理多个工作进程时遇到问题。我可以与多个工作人员连接到本地主机上的redis,但在与redis-to-
go连接时似乎断开了。仅当我有多个运行的kue worker /进程时,这才似乎中断。

kue.redis.createClient = function() {
  var client;
  client = redis.createClient(1234, 'tetra.redistogo.com');
  client.auth('xyz');
  return client;
};


jobs = kue.createQueue();
jobs.process("email, 2, function(job, done) {
  console.log("processing email");
  return done(null, null);
});

得到一个错误

Error: Uncaught, unspecified 'error' event.
    at RedisClient.emit (events.js:47:15)
    at Command.callback (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/index.js:159:29)
    at RedisClient.return_error (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/index.js:446:25)
    at RedisReplyParser. (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/index.js:256:14)
    at RedisReplyParser.emit (events.js:64:17)
    at RedisReplyParser.send_error (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/lib/parser/javascript.js:266:14)
    at RedisReplyParser.execute (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/lib/parser/javascript.js:125:22)
    at RedisClient.on_data (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/index.js:422:27)
    at Socket. (/Users/transformer/Projects/Pictorious/Services/node_modules/redis/index.js:66:14)
    at Socket.emit (events.js:64:17)

问题答案:

如果您正在使用Redis To Go
nano实例(例如免费实例),则可能会遇到连接限制。您只被允许10个连接,看来kue在做redis.client()很多。因此,您可能会达到该极限。

为了确定这一点,请redis.debug_mode = true;在进行任何工作之前添加并查看输出内容(注意:它将吐出很多信息,b \
c发生了很多连接,但是在或处出现“最大连接数”错误在输出即将结束时。

至少当我们有一个工人和客户都在访问kue时,我们似乎达到了这个极限。

希望这可以帮助。



 类似资料:
  • 问题内容: 我正在满足以下要求的应用程序(Spring): 从Redis Server1读取数据 从Redis Server2读取数据 从Redis Server3读取数据 和 将信息保存到MySQL。 有人可以给我们一个思路,使用Spring Data Redis连接到不同的Redis服务器。 获得了链接:http : //forum.spring.io/forum/spring- projec

  • 控制台日志, 似乎没有拾取数据库

  • 我使用自签名证书在我的aws弹性负载均衡器上配置https时遇到了问题。在我完成设置之后,连接到httpsendpoint就不起作用了。http连接还是可以的。 我是这么做的。 > 使用此命令生成自签名证书 openssl rsa-in privatekey.key-check openssl x509-in certificate.crt-text-noout 将证书、密钥和证书转换为.pem编

  • 我试图与一个springboot应用程序连接到2个不同的redis实例:一个用作数据库,一个只用作缓存。我添加了不同的连接工厂和不同名称的redis模板,我使用@Qualifer来链接它们。我试图禁用从自动配置类RedisAutoConfiguration,但没有工作。 我总是收到这个错误: 包装人:org。springframework。豆。工厂UnsatifiedPendencyExcepti

  • 问题内容: 这不是让我输入我的名字,但是年龄确实可以。我知道我可以更改语句的顺序,但是还有另一种方法可以做到吗? 问题答案: 您的问题是,下一个int不考虑输入在您的姓名部分中的换行符。因此,名称返回为空白。 您可以通过两种方式更改代码: 要么 我个人喜欢第二种方式。

  • 我是新来的React Native,刚刚用React Native init rnapp命令创建了一个应用程序,它发出了许多警告: 然后我转到android文件夹并运行以下命令: 但我明白了: * 有人知道如何修复这个问题,并在这个空应用程序上为Android构建apk文件吗?