caching - 执行 SET {Key} 超时,inst : 0, mgr : Inactive, 队列 : 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0

标签 caching azure redis stackexchange.redis

我正在尝试使用 StackExchange.Redis 客户端将 90 KB pdf 文件保存到 Azure Redis 缓存中。我已将该文件转换为字节数组并尝试使用 stringSet 方法保存它并收到错误。

代码:

byte[] bytes = File.ReadAllBytes("ABC.pdf"); cache.StringSet(info.Name, 字节); --> 此行抛出异常“执行 SET {Key} 超时,inst: 0, mgr: Inactive,queue: 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0 ”。

请帮忙。

最佳答案

执行 SET {Key} 超时,inst: 0,mgr: Inactive,queue: 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0 意味着,它已发送一个请求 (qs),但未发送队列 (qu) 中还有另一个请求,而没有任何内容可从网络读取。有一位活跃的作者,这意味着未发送的作者不会被忽略。基本上,发送了一个请求并等待返回响应。

几个问题: 1. 您的客户端是否与缓存运行在同一区域?从您的开发盒运行它会引入额外的延迟并导致超时。 2. 您多久会遇到一次异常(exception)情况?随时都能成功吗? 3.您也可以联系[email protected]包含您的缓存名称、您看到超时的时间(带时区)范围,以及如果可能的话,一个有助于重现问题的控制台应用程序。

希望这有帮助, 迪帕克

有关此线程的错误代码的详细信息:#83 inst: 在最后一个时间片中: 已发出 0 个命令 mgr:套接字管理器正在执行“socket.select”,这意味着它正在要求操作系统指示一个有事情要做的套接字;基本上:读者没有主动从网络上阅读,因为它认为没有什么可做的 队列:总共有 73 个正在进行的操作 qu:其中 6 个在未发送队列中:它们尚未写入出站网络 qs:其中 67 个已发送并正在等待服务器的响应 qc:其中 0 个已看到回复,但由于等待完成循环而尚未标记为完成 wr:有一个活跃的作者(这意味着 - 这 6 个未发送的内容不会被忽略) in: 没有事件的读取器,并且 NIC 上可读取的字节数为零

关于caching - 执行 SET {Key} 超时,inst : 0, mgr : Inactive, 队列 : 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26727762/

相关文章:

java - 使用 EhCache 将持久缓存集成到 Apache Httpclient

java - 用Ehcache可以解决这个问题吗?

Django channel - Redis 集成错误 : aioredis. 错误。回复错误:ERR 未知命令 'EVAL'

redis - 重新启动后不会出现Coldfusion 2016 API Manager

Azure API 管理 - 使用 Swagger 2.0 规范导入 API - 不考虑响应的架构属性

performance - 使用 RediSearch 请求特定字段(不是所有字段)

caching - Windows Azure - 角色内缓存、监控

linux 服务器创建缓存和 laravel 项目失败

reactjs - 如何在 Azure 静态 Web 应用中手动部署 NextJS SPA

c# - 在 C# 中创建 Azure Blob SAS key 时出现 "Inadequate resource type access"