mongoDB是否会缓存?前端中使用mongoose如何缓存查询结果?

mongoDB是否会缓存?

在Mongo文档官网有这端话:

Does MongoDB handle caching?

Yes. MongoDB keeps most recently used data in RAM. If you have created indexes for your queries and your working data set fits in RAM, MongoDB serves all queries from memory.

MongoDB does not cache the query results in order to return the cached results for identical queries.

For more information on MongoDB and memory use, see WiredTiger and Memory Use.

MongoDB处理缓存吗?

是的。MongoDB将最近使用的数据保存在RAM中。如果您已经为您的查询创建了索引,并且您的工作数据集适合RAM, MongoDB服务于所有来自内存的查询。

MongoDB不会缓存查询结果来为相同的查询返回缓存的结果。

有关MongoDB和内存使用的更多信息,请参见WiredTiger和内存使用。

其实,MongoDB会缓存,它会将数据文件映射到内存中,如果是读操作,内存中的数据起缓存作用。

但是MongoDB不会缓存结果,所以即使我们使用相同的查询语句,也要经历一次“查询”过程。

前端中使用mongoose如何缓存查询结果?

mongoose作为一款node.js异步环境下对mongodb进行便捷操作的对象模型工具,并没有提供缓存查询结果的功能,博主扒拉了好久然后发现了下面这个库:

https://www.npmjs.com/package/cachegoose

它方便地可以将查询结果缓存到redis或内存中,如果你的Node项目需要这种优化,可以常识一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值