首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在缓存中存储对象集合的方法或策略

在缓存中存储对象集合的方法或策略
EN

Stack Overflow用户
提问于 2016-06-12 19:10:01
回答 1查看 140关注 0票数 1

我正在尝试将对象集合存储在缓存中。

代码语言:javascript
复制
   {
    "name": "Dep1",
    "employees": [{
        "id": 1,
        "name": "emp1",
        "profilePic": "http://test.com/img1.png"
    }, {
        "id": 2,
        "name": "emp2",
        "profilePic": "http://test.com/img2.png"
    }, {
        "id": 3,
        "name": "emp3",
        "profilePic": "http://test.com/img3.png"
    }, {
        "id": 4,
        "name": "emp4",
        "profilePic": "http://test.com/img4.png"
    }]
}

在这种情况下,如果Employee 1更改了他的个人资料图片,我需要使完全缓存的对象无效,以维护数据一致性。这种方法破坏了缓存,因为每当有员工的任何更新时,我都需要清除那个完整的对象。

有没有更好的方法或设计可以让我们对此进行优化?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-08-03 18:30:24

这是一个redis问题吗?我假设它是通用的。

只检索ID,然后按ID请求每个条目。

将每个请求的条目列表仅存储为ID列表。

现在可以缓存列表,也可以缓存每个条目。

因为您只检索ID,所以可以对数据创建非常简单、非常高效的索引(数据总是直接从索引中获取,因为它只是ID)。更新可能需要或可能不需要使列表的高速缓存无效,这可能足以使条目高速缓存无效。即使您使列表无效,您仍然会有相当好的性能,因为您不太可能经常使条目缓存无效。

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

https://stackoverflow.com/questions/37773535

复制
相关文章

相似问题

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