Azure Redis缓存超时和无连接错误

时间:2017-09-22 07:05:34

标签: caching redis azure-redis-cache

我偶尔会从Azure上的API网络应用

获取与Azure Redis相关的错误
Timeout performing EVAL, inst: 1, queue: 2, qu: 0, qs: 2, qc: 0, wr: 0, wq: 0, in: 0, ar: 0, clientName: RD00155DD0C827, IOCP: (Busy=0,Free=1000,Min=1,Max=1000), WORKER: (Busy=1,Free=1022,Min=1,Max=1023), Local-CPU: unavailable

没有联系:

No connection is available to service this operation: EVALUnableToConnect on ausession.redis.cache.windows.net:6380/Interactive, origin: ResetNonConnected, input-buffer: 0, outstanding: 0, last-read: 13s ago, last-write: 13s ago, unanswered-write: 180447s ago, keep-alive: 60s, pending: 0, state: Connecting, last-heartbeat: never, last-mbeat: -1s ago, global: 13s ago

我在ASP.net项目中使用 Microsoft.Extensions.Caching.Redis v1.1.1 。 Redis配置:

ssl=True,abortConnect=False,connectTimeout=10000

我正在使用Azure Redis大小 C1标准(1GB),并将其配置如下(将maxmemory-reserved和maxfragmentationmemory-reserved设置为50)

https://gyazo.com/9d14a317cf23e9e64a31b80ad7d061a3

你知道导致错误的原因以及如何阻止它吗?非常感谢你。

2 个答案:

答案 0 :(得分:0)

超时可能是许多因素的结果,包括高服务器负载,执行昂贵的命令,高客户端CPU,配置不当的客户端线程池等。以下是一些文章,讨论了超时的每个最常见原因:

Diagnosing Server issues Diagnosing Client issues

至于连接相关的问题,可能是由几件事引起的,包括服务器端扩展,故障转移或修补,客户端扩展或部署,客户端或服务器端网络驱动程序更新等。下面是一篇文章关于其中一些

https://gist.github.com/JonCole/317fe03805d5802e31cfa37e646e419d#file-azureredis-patchingexplained-md

最后,由于帮助数百名客户诊断出这些类型的问题,我收集了一组Best Practices,您可能也希望仔细阅读。

如果您仍然无法弄明白,请联系客户支持,他们可以提供帮助。

答案 1 :(得分:0)

我删除了<sessionState mode="Custom" customProvider="MySessionStateStore"> 从web.config文件中修复它。