我在node js中使用bull库排队时出错,错误是这样的:
Error: read ECONNRESET at TCP.onStreamRead
- - errno: -104,
- - code: 'ECONNRESET',
- - syscall: 'read'
- - }
和
MaxRetriesPerRequestError: Reached the max retries per request limit (which is 20). Refer to "maxRetriesPerRequest" option for details.
这是我的代码:
const imageQueue = new Bull("imageQueue", process.env.REDIS_URL);
3条答案
按热度按时间yqhsw0fo1#
通过添加tls成功解决错误
c3frrgcw2#
bull使用ioredis进行连接,并在Queue构造函数中允许第三个opts参数。根据源代码,它在这些选项中查找redis属性。
您可以尝试将重试限制提高到100。
但是,同样,你可能会使用Heroku的redis服务比他们允许的免费层(如果这是你使用的)更密集。
tyu7yeag3#
你可以做一些类似于npm包文档中建议的事情。
https://www.npmjs.com/package/ioredis#user-content-auto-reconnect
你需要在创建bull队列时发送这个redis配置。