无法从 Azure Web App 连接到 Azure Cache for Redis

Can't connect to Azure Cache for Redis from Azure Web App

我有 NodeJS Web 应用程序,它试图连接到属于同一订阅的 Azure Redis 缓存。

const redis = require('redis')

const redisConnectionConfig = {
  host: REDIS_HOST,
  port: REDIS_PORT,
  auth_pass: REDIS_PASSWORD
  tls: { servername: REDIS_HOST }
}
...

 redis.createClient(redisConnectionConfig)

将我的 IP 添加到 Redis 防火墙规则后,我可以从我的本地计算机连接到 Redis。

此外,我已经从服务应用程序属性中添加了所有 'Outbound IPs and Additional Outbound IP Addresses'。

我什至尝试过允许从所有 IP 访问 还没通过

但是它没有连接,如果我尝试使用 Redis,我会收到以下连接错误: MaxRetriesPerRequestError: Reached the max retries per request limit (which is 20). Refer to "maxRetriesPerRequest" option for details.

为 VM 解决了类似的问题。但就应用服务而言,Azure 管理该层。

看起来这不是连接问题。 您始终可以通过 WebApp->Console 检查网络部分并使用命令

tccping redisservername:redisserverport

tcpping_example

可能与您的 redis 缓存大小有关。你现在用什么尺寸的? 你可以找到 azure redis 限制 here