【问题标题】:Multiple Redis connection exception (No Connection available to service) during App service swap slots应用服务交换槽期间出现多个 Redis 连接异常(No Connection available to service)
【发布时间】:2019-10-05 08:41:29
【问题描述】:

我有一个生产中的 Web 应用程序 (.Net Core),我将它作为应用程序服务部署在 Azure 中,它位于高级层 p2v2 4 实例中。我还使用 Azure Redis 缓存(高级层),我的应用程序将其用作缓存。我为负载平衡配置了两个应用服务(主要和次要)流量管理器。

每当我尝试使用交换槽功能将我的应用程序部署到生产环境中时,应用程序服务响应时间都会上升到 20 秒,并且下降了大约 1 分钟,而我的 CPU 利用率接近 90%。我看到来自 Redis 客户端的多个异常(例如:没有可用于服务此操作的连接:EVAL;无法连接到 Redis 服务器。要创建断开连接的多路复用器,请禁用 AbortOnConnectFail。ConnectTimeout;IOCP : (Busy=0,Free=1000,Min=8,Max=1000), WORKER: (Busy=452,Free=32315,Min=8,Max=32767), Local-CPU: n/a) 和我的 HttpQueue长度超过 10

我可以从上图推断是工作线程已经超载,不知道为什么会发生

我正在使用 .Net StackExchange Redis 客户端 2.0.601 版,最近从 1.2.4 版进行了更新

注意: 我没有使用特定于插槽的应用设置。 在部署期间,每个交换槽都会不断发生这种情况 我在日志中没有发现任何应用服务重启。

我想知道你们中的任何人都面临这个问题,如果是,请告诉我问题出在哪里或如何调试,如果你能分享你尝试过的任何东西也会更好。

我试图在 AZure Redis 缓存服务器中查找任何错误日志,但找不到任何错误日志。

我正在尝试找出导致此问题的原因,如何使用 azure 调试此类问题,以及是否有人遇到相同问题并针对相同问题实施了任何解决方案?

如果您需要任何其他详细信息,请告诉我。

【问题讨论】:

    标签: azure .net-core redis azure-web-app-service stackexchange.redis


    【解决方案1】:

    这里可能值得一试:

    使用多个报告间隔报告缓存指标,包括过去一小时、今天、过去一周和自定义。每个指标图表的指标边栏选项卡显示图表中每个指标的平均值、最小值和最大值,一些指标显示报告间隔的总数。

    每个指标包括两个版本。一个指标衡量整个缓存的性能,对于使用集群的缓存,第二个版本的指标(名称中包含(Shard 0-9))衡量缓存中单个分片的性能。例如,如果一个缓存有 4 个分片,则 Cache Hits 是整个缓存的命中总数,而 Cache Hits (Shard 3) 只是该缓存分片的命中。

    尝试在监控时查找错误指标。

    https://docs.microsoft.com/en-us/azure/azure-cache-for-redis/cache-how-to-monitor#available-metrics-and-reporting-intervals

    此外,我们需要重试 TimeoutException、RedisConnectionException 或 SocketException,即使它确保它会在出现任何异常时尝试连接,您可以在下面的文档中阅读有关 Redis 缓存使用的所有最佳实践:

    https://docs.microsoft.com/en-us/azure/azure-cache-for-redis/cache-best-practices

    https://docs.microsoft.com/en-us/azure/azure-cache-for-redis/cache-best-practices#when-is-it-safe-to-retry

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-10
      • 2019-01-20
      • 2014-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-19
      相关资源
      最近更新 更多