【问题标题】:Azure Redis timeout with multiple instance of Azure webapp多个 Azure webapp 实例的 Azure Redis 超时
【发布时间】:2018-03-25 22:46:31
【问题描述】:

我正在使用 StackExchange 的 Redis 客户端读取数据并将数据写入 Azure 缓存 (C2)。在负载测试期间,如果我使用 webapp 的一个实例,redis 表现良好,没有任何错误。但是,如果我设置了 webapp 的多个实例(尝试了 5 个使用和不使用自动缩放的实例),我会收到以下错误

Timeout performing GET {key}, inst: 2, mgr: Inactive, err: never, queue: 0, qu: 0, qs: 0, qc: 0, wr: 0, wq: 0, in: 0, ar: 0, clientName: {client}, serverEndpoint: Unspecified/{redis_server}, keyHashSlot: 13746, IOCP: (Busy=1,Free=999,Min=4,Max=1000), WORKER: (Busy=26,Free=32741,Min=4,Max=32767) (Please take a look at this article for some common client-side issues that can cause timeouts: http://stackexchange.github.io/StackExchange.Redis/Timeouts)

我尝试为 MVC 项目增加 IOCPWORKER,它确实显示正确的 Min 值但仍然给出错误。

增加线程的日志如下所示

Timeout performing GET {key}, inst: 6, mgr: Inactive, err: never, queue: 1, qu: 0, qs: 1, qc: 0, wr: 0, wq: 0, in: 0, ar: 0, clientName: {client}, serverEndpoint: Unspecified/{redis_server}, keyHashSlot: 13746, IOCP: (Busy=2,Free=998,Min=100,Max=1000), WORKER: (Busy=84,Free=32683,Min=200,Max=32767) (Please take a look at this article for some common client-side issues that can cause timeouts: http://stackexchange.github.io/StackExchange.Redis/Timeouts)

有什么可能导致这种情况的建议吗?

【问题讨论】:

    标签: azure redis azure-web-app-service stackexchange.redis azure-redis-cache


    【解决方案1】:

    [已编辑]

    第一个错误表明对 ThreadPool 的更改没有生效。但是,您最近发布的更新错误消息显示它们已经生效,这很好。

    既然您已经解决了这个问题,那么可能还有其他问题会导致持续超时。我在这里记录了最常见的原因:

    Client Side Issues

    Server Side Issues

    我看到的另一个常见问题是客户端 CPU 达到 100%。您必须小心查看 MAX CPU 而不是 AVG CPU,因为 AVG CPU 可能低于 100%,而 MAX 仍然达到 100%。每当 CPU 达到 100% 时,您的计算能力就会耗尽,并且在处理服务器发送的响应时会出现延迟(即使服务器响应非常快)。

    【讨论】:

    • 只是想知道您是否增加了 IOCP 和 Worker 的最大线程池计数而不是 Min。看到这个(乔恩科尔):gist.github.com/JonCole/e65411214030f0d823cb#file-threadpool-md.
    • 我确实使用 global.asax 增加了线程并且我在日志中得到了正确的数字但是我得到了同样的异常。让我去拿那份日志。
    • @joncole 我已经添加了日志。只是让您知道,我的客户端/消费者 mvc 应用程序托管为 azure web 应用程序
    • 在您在上面的问题中添加更多详细信息后,我编辑了我之前的回复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-05
    • 2017-05-15
    • 2020-06-22
    • 2020-10-03
    • 2015-06-16
    • 2016-04-26
    相关资源
    最近更新 更多