首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure Redis Cache和RedisJSON,可能的替代品

Azure Redis Cache和RedisJSON,可能的替代品
EN

Stack Overflow用户
提问于 2021-08-18 14:00:58
回答 3查看 1.1K关注 0票数 2

我正在研究使用Azure Redis Cache作为我们的应用程序之一。在某些情况下,我们需要存储纯实务部分明确建议不要,这是最好的JSON。我对Redis非常陌生,我正在研究可能的模式以满足我们的需求,我不确定我的方法是否违背了这些最佳实践。

我要实现的模式是:

  1. Cosmos数据库中的项发生了更改
  2. 对于更新的项,将解析更改提要。
  3. 更新的项被序列化并写入Redis。
  4. 稍后查询系统时,首先查找缓存的项。如果存在,则检索和反序列化。如果不存在,请查询Cosmos。

集合和GET将在应用程序的两个完全独立的部分中进行。我永远不会检索、修改和设置这样的场景,因为Cosmos文档充当中间文件,永远不能触发同步写入。在查询系统时,如果有文档存在,则总是期望缓存是最新的。

我无法真正弄清楚我的方法是否存在上述数据丢失的风险:

更糟糕的是,许多应用程序只需获取整个JSON字符串,反序列化它,操作它,重新序列化并在应用程序中再次设置它。这是反模式。用这种方法丢失数据的风险很大。

他们接着建议使用RedisJSON,这必须在数据库级别上激活。

不幸的是,对于Azure Redis Cache来说,这似乎是不可能的,或者至少我在创建资源或创建资源时找不到任何文档或任何选项来做到这一点。

  1. 有可能在Azure Redis缓存中使用RedisJSON吗?
  2. 如果不是#1,是否有其他推荐的方法来使用Redis存储JSON数据,或者我建议的方法是一种可能的解决方案?

更新

我通过监听想要缓存在Azure函数中的容器的提要来解决这个问题。这个模式有一个单独的应用程序实例,它曾经写过一个唯一的文档,并且读取完全分开进行,并且从不改变缓存的值。

如果插入或更新了整个文档,则更改提要将接收该文档,但不会删除。由于接收到了整个文档,在某些条件下很容易使缓存失效,或者添加一个软删除值来完全删除它。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-08-22 05:48:47

有可能在Azure Redis缓存中使用RedisJSON吗?

您可以使用RedisJSON轻松地使用RedisJSON在Azure上创建Redis (参见:https://redis.com/redis-enterprise-cloud/pricing/ )

票数 2
EN

Stack Overflow用户

发布于 2022-05-19 23:11:50

有可能在Azure Redis缓存中使用RedisJSON吗?

我认为它不受Azure Redis https://learn.microsoft.com/en-us/answers/questions/709524/when-can-expected-redis-json-module-support-with-a.html的支持

我还为azure Redis缓存实现了一个解决方案,以保存JSON文档,我将转义的json字符串保存为Redis值

票数 0
EN

Stack Overflow用户

发布于 2022-08-03 19:15:00

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68833876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档