Nodejs Azure Rediscaching永远挂起并读取ECONNRESET错误

我创build了一个新的Azure Rediscaching,需要将近5分钟才能完成创build。 我正在使用node-redis包,这是我的代码

var client = redis.createClient( process.env.REDIS_PORT || 6379, process.env.REDIS_HOST || '127.0.0.1' ); if(process.env.REDIS_HOST) { client.auth(process.env.REDIS_KEY); } 

是的,这些环境variables是正确设置,它只是挂了一段时间,并提出一个错误:Redis连接到mycache.redis.cache.windows.net:6380失败 – 读ECONNRESET。

现在,当我使用redis-cli尝试连接redis-cli -h myhost -p 6380 -a the-auth-key它只是挂在命令行上,似乎没有连接build立,但也没有错误。 这只是无所事事。 如果我改变端口等,我得到连接错误。 所以我现在想知道我在做什么错了?

我在另外一个地区创build了另一个rediscaching(我花了最大的99.9 SLA等)。 不过,没有连接是可能的。

任何帮助,将不胜感激。

新caching默认只启用SSL端点(端口6380)。 有些客户端(如redis-cli)不支持SSL。 您需要检查node-redis是否支持SSL。 如果您尝试使用不支持SSL的客户端连接到SSL端口,您将得到erorrs。

如果您需要使用客户端不支持SSL,则有两个选项。 一种是使用“stunnel”这样的应用程序在本地机器和Rediscaching之间创buildSSL隧道。 我知道stunnel适用于像redis-cli这样的特殊场景,但我不确定在生产负载下它是如何执行的。

第二个选项是启用Azure门户中的非SSL端点(端口6379)。 但是,我们不build议将此用于生产caching,因为您的访问密钥和数据将全部以明文forms发送。