0

如果我在本地缓存中缓存某些内容并定期使用它,分布式缓存是否知道本地缓存正在使用它?

我问这个的原因是因为分布式缓存有一个最少使用的驱逐策略。如果我没有从分布式缓存中使用它并且分布式缓存不知道我正在使用它,那么它将在某个阶段被驱逐。

这是一个很少改变的大数据,所以我会缓存很长一段时间。我不想在电线上拖动 2 或 3 MG 的次数要多于我必须基于它在最少使用的基础上从分布式缓存中逐出的情况。

因此我的问题 - 分布式缓存是否知道它正在被使用,因此不会将其驱逐为最少使用的?

4

1 回答 1

0

有趣的。

文档说,当从缓存中请求一个对象时,如果它存在于本地缓存中,那么

立即返回对对象的引用,无需联系服务器
( MSDN )

在这种情况下,不可能通知远程缓存该对象正在被使用,这似乎支持您认为该对象可能成为驱逐候选对象的想法。

这里有一些讨论表明本地缓存也使用 LRU 算法,我很想知道这两个缓存是否对其 LRU 计时进行任何通信/同步。

于 2013-08-27T11:19:00.927 回答