gpt4 book ai didi

node.js - 如何为关联过多的数据模式构建 Redis - mongodb

转载 作者:IT王子 更新时间:2023-10-29 06:12:32 26 4
gpt4 key购买 nike

我有一个包含 10 多个单独数据模型的应用程序。这个模型中的每一个都如此深刻地相互关联。例如,有一个名为用户的模型与其他数据模型相关联,如帖子、评论、回复、连接等。我正在尝试拥有一个 redis 缓存系统,该系统将在每次进行查询时缓存数据。所以考虑一下这个帖子被点赞的场景,当这个查询发生时,我将不得不更新所有以某种方式与这个查询相关联的模型。

所以我的问题是如何构建我的 redis 缓存系统,以便在每次进行查询时更新所有相关数据。

最佳答案

这是一个非常宽泛的问题。我不知道您的数据库模式和那些实体关系是什么样的。但我有一些建议,希望能指导您构建数据。

分解您的实体分别存储user, post, comment, reply。例如,当您需要获取 post 时,从 redis 中单独获取 post 及其所有实体,然后将它们合并以构建响应。

类似于 POST:345USER:23COMMENT:567

不要把所有东西都存储在redis中维护缓存要困难得多。仅存储您经常访问的数据,如果您从缓存中提供这些数据,它们将真正产生影响。例如,存储用户配置文件将改进所有帖子响应评论响应连接列表等,因为它们都有用户对象,而您将拥有它们被缓存。

直接在redis中增加统计数据点赞数和评论数可以直接在redis中自增自减

更新时缓存无效更新实体时,不要更新其缓存。只需将其从缓存中删除,下一个 get 调用就会缓存更新的数据。这只是为了简化代码。

关于node.js - 如何为关联过多的数据模式构建 Redis - mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55721703/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com