【问题标题】:No update in the mongoose-cache after change in the collection更改集合后,猫鼬缓存中没有更新
【发布时间】:2016-01-10 06:40:42
【问题描述】:

我有一个基于 MEAN 堆栈的应用程序,最近,我试图实现一些缓存机制来缓存查询结果。我实现了mongoose-cache

猫鼬缓存配置

require('mongoose-cache').install(mongoose, {max: 150, maxAge:1000*60*10});

我在示例集合中有两个文档说

{name:'dale', dep:2},
{name:'john', dep:4} 

我在启用 mongoose-cache 的情况下运行查询,ma​​xAge 是 10 分钟

sample.find().cache().exec(function (err, doc) {
        // returns 2 document
    }); 

接下来,我又插入了一个文档说 {name:'rasig', dep:4} 并执行相同的查询

sample.find().cache().exec(function (err, doc) {
        // returns 2 document instead of 3
    });   

我在 10 分钟内执行了两次相同的查询,虽然集合发生了变化,但我得到了之前的结果。一旦集合发生变化,有什么方法可以删除缓存的结果。如果没有,您能否建议其他方法来实现相同的功能。

【问题讨论】:

    标签: javascript node.js mongodb caching mongoose


    【解决方案1】:

    我是名为 Monc 的新 Mongoose 模块的作者

    使用 Monc 很容易清理或清除整个缓存,甚至是关联的 Query 对象,只需使用:

    sample.find().clean().cache().exec(function (err, doc) {});  
    

    【讨论】:

      猜你喜欢
      • 2016-02-02
      • 2021-12-31
      • 2015-04-10
      • 2020-01-20
      • 2013-01-14
      • 2012-03-28
      • 2017-11-01
      • 1970-01-01
      相关资源
      最近更新 更多