添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

Has anyone encountered below error while connecting to standalone redis server using node js ioredis package?

Below is the error stack trace:

2018-08-16T10:52:18.351869060Z [ioredis] Unhandled error event: Error: connect ETIMEDOUT
2018-08-16T10:52:07.449457296Z at Timer.listOnTimeout (timers.js:207:5)
2018-08-16T10:52:07.449448499Z at tryOnTimeout (timers.js:237:5)
2018-08-16T10:52:07.449439722Z at ontimeout (timers.js:365:14)
2018-08-16T10:52:07.449430834Z at Socket._onTimeout (net.js:339:8)
2018-08-16T10:52:07.449421915Z at Socket.emit (events.js:185:7)
2018-08-16T10:52:07.449413002Z at emitNone (events.js:86:13)
2018-08-16T10:52:07.449403458Z at Socket.g (events.js:291:16)

This is occurring for instantiating only Standalone Redis object in node js. Below is the code I am using,

var publisher = new redis(redisPort, redisHost);

any solution would be highly appreciated.

You can probably try increasing the timeout limit since ioredis has a default timeout value.

Normally we would have it set as,

new Redis({
  connectTimeout: 10000

In your case, since you have,

var publisher = new redis(redisPort, redisHost);

You will have to edit your code to pass the connectTimeout parameter to be passed accordingly.

Hope this helps.

Sure, Can you please post the relevant code where you set the values for redisPort and redisHost variables respectively? – David R Aug 16, 2018 at 12:06

It's a bit late but can be helpful in the future for somebody else.

const redis = new Redis({
   port: <your_redis_port>,
   host: <your_redis_hostname>,
   connectTimeout: 10000

I am using Redis client maintained by Heroku and for some strange reason the Redis credentials have been changed by Heroku, I have been facing the same issue until I double-check the old credentials and the one on Heroku and I realised they were no longer the same then copied the new one from Heroku and pasted it in my .env file and everything is working as expected now!!!

If you happened to create the Redis client while you are initiating the project, this error would not occur as Heroku will automatically be updating the credentials for you. This error is a result of creating your project separately then later on you added the Redis client add-on. Hope my explanation is clear. By the way thanks for the upvote!! :)) – Shamxeed Jan 19, 2022 at 16:53

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.