redis getaddrinfo ENOTFOUND - node.js,redis连接

sai*_*hna 6 amazon-ec2 amazon-web-services redis node.js amazon-elasticache

嗨我试图从node.js连接redis成功,现在我在亚马逊ec2实例上托管我的node.js服务器应用程序和亚马逊弹性缓存实例上的redis连接到redis是成功的但偶尔我会得到下面提到的错误.

var pub = redis.createClient(6379,'quizredis.qnsdtp.0001.apse1.cache.amazonaws.com'); 


events.js:72
    throw er; // Unhandled 'error' event
          ^       Error: Redis connection to quizredis.qnsdtp.0001.apse1.cache.amazonaws.com:6379 failed - getaddrinfo ENOTFOUND
at RedisClient.on_error (/home/ec2-user/roomChat-7/node_modules/redis/index.js:196:24)
at Socket.<anonymous> (/home/ec2-user/roomChat-7/node_modules/redis/index.js:106:14)
at Socket.EventEmitter.emit (events.js:95:17)
at net.js:813:16
Run Code Online (Sandbox Code Playgroud)

我使用redis-npm模块;

Ted*_*ard 0

据我了解,这是DNS解析错误。Elasticache Redis 是一项 VPC 特定服务。它的 DNS 记录仅在 VPC 内可用,并且通常情况下,VPC 将自定义 DHCP 选项与自定义 DNS 服务器一起使用 - 它可能没有记录。

检查几件事 -

  1. 在您的 VPC 中配置的 DNS 服务器。检查这里
  2. 检查机器中 nslookup 命令的输出 - 如果您使用 Linux shell

nslookup quizredis.qnsdtp.0001.apse1.cache.amazonaws.com

干杯!