问题标签 [azure-redis-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
60570 浏览

azure - 从 StackExchange.Redis 缓存中删除/删除所有/一项

我正在使用带有 Azure Redis 缓存服务的 StackExchange.Redis 客户端。这是我的课,

更新:在 Marc 的帮助下,这是我的最后一堂课

现在我不知道如何从 redis 缓存中删除所有项目或单个项目。

0 投票
0 回答
691 浏览

c# - 企业库瞬态故障处理与 StackExchange.Redis 一起连接到 Azure Redis 缓存

我目前正在使用 MS Enterprise Library 6 瞬态故障处理应用程序块。我提供了一个无效RedisCacheKey的来模拟服务中断。

瞬态故障处理

观察调试输出

StackExchange.Redis 是否会破坏 azure redis 缓存?有没有人实现过类似的东西?

0 投票
2 回答
2402 浏览

azure - Azure Redis 缓存作为数据存储?

我正在开发 PaaS。该应用程序将托管在 Azure 网站中。目前我正在使用 EF / SQL 作为内存缓存的数据存储。如果应用程序增长并且我需要在多个实例之间共享此缓存,我计划使用 Azure Reddis 缓存。

当我更多地研究reddis时,我开始喜欢我所看到的。对于我的许多域对象来说,它真的非常快速和完美。例如我的日志模型。所以现在我想知道,我可以使用 Azure Reddis 缓存作为主数据存储吗?

名字中的缓存这个词让我很担心。不使用时是否清除数据?

虽然我在做,但我想我应该更详细地描述我的应用程序。该应用程序是 MVC5 应用程序。它包括一个 HtmlController 管理部分,但工作的核心是在 ApiController 中。ApiController 将主要服务于 OData Get,但我也会分享我的 PUT 请求。我按请求计费,因此必须记录所有用户操作(reddis 的完美工作)。

编辑

我的模型有三个对象,没有关系。不经常用于身份验证的用户。90% 的日志记录是“一劳永逸”,而存储是由“应用密钥”和“组密钥”分区的。将请求存储“集”,并且将在内存中手动应用 Odata 动词。

编辑

经过更多阅读,我想知道 Azure Tables 会是一个更好的解决方案。这个博客很有影响力。假设同时替换缓存和 sql。

编辑:通过电子邮件发送 Azure

所以我给 Azure 发了电子邮件....

你好尼古拉斯,

您的问题似乎需要技术支持,而不是选择的计费和订阅支持。

目前,您没有 Windows Azure 技术支持订阅。

请注意,Windows Azure 有许多选项可供您选择以获得技术支持。您是否尝试过在我们的社区论坛中搜索或发布您的问题?Windows Azure 生态系统为经常出现的大量技术问题提供了答案。此外,如果您访问 WindowsAzure.com/support,您会看到我们有多种付费支持选项,您可以选择最能满足您的技术支持需求的一种。

真的吗 ?这不是您进行售前查询的方式。

0 投票
1 回答
2587 浏览

c# - 在开发中使用 Azure Redis 缓存(预览版)

是否可以像使用 Azure 存储一样在某些模拟器上使用 Azure Redis 缓存(预览版)?

从这篇文章可以在没有模拟器的情况下运行 Azure 缓存预览吗?我想这可能与 devfabric 模拟器,但如何配置它?

0 投票
1 回答
2547 浏览

c# - StackExchange.Redis 字符串值转换为 set

我使用 StackExchange.Redis 来处理缓存。我有从缓存返回值的操作(如果值存在)

_service.LoadCalculatorSalaries();- 这是从 Azure Blob 返回数据的服务,这里将数据返回为string.

问题:我将键“CalculatorSalaries”的值设置为,string但是当我尝试获取它时,我得到一个error, 因为该键的值是 type set

我哪里错了?


PS当我在步骤调试代码时

var s = (string) _cache.StringGet("CalculatorSalaries");

当键“CalculatorSalaries”的值存在时调试跳过并且错误仅在浏览器控制台中获取

0 投票
3 回答
1489 浏览

node.js - Azure Redis 缓存数据丢失?

我有一个 Node.js 应用程序,它通过 Websocket 连接接收数据并将每条消息推送到 Azure Redis 缓存。它将持久的消息数组存储在一个变量中以供下游使用,并定期从缓存中同步该数组。有点令人费解,但稍后我想将写入缓存的应用程序的一半与从中读取的应用程序的一半分开。

在格林威治标准时间 02:00 左右,根据 Azure 门户统计数据,我似乎已经开始在该同步中收到“缓存未命中”,这持续了几个小时,然后我在 05:00 左右再次开始收到“缓存命中”。

缓存未命中对应于 CPU 使用率的突然增加,在 05:00 左右达到峰值。当我说峰值时,我的意思是它达到了 81%,而之前的最大值约为 6%。

所以在 05:00 左右的某个时间,CPU 达到峰值,然后又恢复正常,“缓存未命中”消失了,但是查看缓存内存使用情况,我从使用的大约 37.4mb 下降到使用的大约 3.85mb(我怀疑是“空”状态),并且此应用程序正在使用的列表已清空。

应用程序针对缓存运行的唯一功能是 LPUSH 和 LRANGE,没有任何功能可以删除数据,如果有人想知道,当 CPU 提高内存使用率时,没有任何迹象表明流氓增加的数据突然出现。

它只在基本计划中,所以我不指望它是无懈可击的或任何东西,但即使没有标准计划的复制功能,我也预计它不会完全擦除自己 - 我在Redis 定期将自身写入磁盘并在从错误中恢复时从中恢复的印象。

所有这些都是我的提问方式:

  1. 有谁知道这里可能发生了什么?

  2. 如果这是其他人能够意外触发自己的事情,我是否应该注意其他使用相同缓存的应用程序中可能会导致灾难性失败的问题?

  3. 我会欢迎一群人告诉我标准计划不会受到此类问题的影响,因为我已经为此付出了代价,如果觉得那是正确的选择,那就太好了。

提前谢谢了..

0 投票
1 回答
382 浏览

asp.net-mvc - 注销时未调用 Session_start -> 使用 azure redis 缓存以会话状态登录

由于 MS 宣布将共享缓存替换为新的 azure redis 缓存,我已根据此迁移我的应用程序以使用 redis 缓存而不是 azure 共享缓存

现在我面临一个问题,在注销 - >登录时它不会调用 session_start 方法,我的应用程序将设置值以及用户对象,如活动(用户可以执行)和其他一些。

当我使用 inproc 会话状态或以前的 azure 共享缓存时,在 logout->login 上它会调用logoutcallback() >> session_start() >> AuthorizeCore()但使用 redis 缓存它会调用 logoutcallback() >> AuthorizeCore(),我不知道这里有什么问题?

注销和登录代码如下

我的 web.config 设置如下,用于会话状态的 redis 配置

谢谢。

0 投票
1 回答
5834 浏览

caching - 为什么与 Azure Redis 缓存的连接如此之高?

我在单台机器查询缓存的高负载方案中使用 Azure Redis 缓存。这台机器大约每秒获取和设置大约 20 个项目。白天增加,夜间减少。

到目前为止,一切正常。今天我意识到“连接的客户端”的指标非常高,尽管我只有 1 个客户端经常获取和设置项目。这是我的意思的指标的屏幕截图: Redis 缓存连接的客户端

我的代码如下所示:

我没有创建这个类的多个实例,所以这不是问题。也许我误解了连接指标,它们的真正含义是我访问缓存的次数,但是,在我看来,这并没有什么意义。有什么想法,或者有类似问题的人吗?

0 投票
2 回答
1757 浏览

azure - Azure 中 Redis 缓存中的一致超时

我在一个 azure 网站中使用 Redis Cache。缓存托管在 Azure 中。在通过我们的监控为缓存设置值时,我注意到一些超时。因此,我运行了一些负载测试,这些测试是在我从本地服务器缓存转移到使用 redis 之前运行的,与以前的测试运行相比,结果非常糟糕,主要是由于 redis 缓存超时引起的。

我正在使用 StackExchange.Redis 库版本 1.0.333 强名称版本。

每次访问缓存时,我都小心不要创建新连接。

负载测试实际上并没有给服务器加载那么多,结果以前是 100% 成功的,现在由于超时导致大约 50% 的错误率。

用于访问缓存的代码。

0 投票
2 回答
14454 浏览

stackexchange.redis - StackExchange.Redis server.Keys(模式:“IsVerySlow*”)

我是redis的新手,所以我做错了,我敢肯定:

我在 Azure Redis 中存储了大约 16,000 个键/值。

我使用以下内容编写键/值

所以我的钥匙看起来像这样:“AP:201401:AZ5798BK”

当我尝试查找时:

返回密钥需要 1 分 12 秒。一旦我有了密钥,就需要几毫秒来检索这些密钥的值。如果我遍历键的值并返回值,我会得到类似的结果。我做了一个 ToArray() 只是为了隔离问题。

如果我在 redis-cli.exe 中尝试相同的查询,它会在几毫秒内返回。

我是否错误地使用了这个命令?