0

什么是节点 LRU 缓存?任何人都可以解释如何实现它?假设我有三层,client-midlayer(handle calls)-backend(mongoDB),LRU缓存应该在中间层实现。

如果有一个简单的例子来展示它是如何工作的,那就太好了!提前致谢。

4

2 回答 2

1

有一个关于如何在源存储库中使用它的示例:https ://github.com/isaacs/node-lru-cache/tree/master/test

我假设您希望 LRU 持久保存到 MongoDB?如果是这种情况,您将需要扩展或重写该库,因为乍一看它就像一个简单的内存中 LRU 缓存模块。

于 2012-07-24T15:58:22.347 回答
0

您还需要考虑 Redis 的排序集。如果您有多个前端服务器实例,则为每个服务器保留一个 LRU 实例将导致它们不同步。Redis 的排序集非常适合这个问题,而且速度非常快。

您可以使用时间戳使它们按最新排序,并且可以通过事务以原子方式读取和更新列表。它肯定会很好地满足缓存的目的。

于 2012-07-25T05:09:20.660 回答