0

缓存加载器:用例

使用 GemFire 的主要用例之一是,它用作快速运行的缓存,其中保存最新数据(例如最近 1 个月),所有剩余数据位于后端数据库中。我的意思是 1 个月大的 Gemfire 数据在 1 个月后溢出到数据库。但是,当用户要查找超过 1 个月的数据时,我们需要去数据库获取数据。缓存加载器适用于对缓存未命中执行此操作并从数据库中获取数据。关于缓存加载器,我相信只有当我们对某个键执行 Get 操作并且该键丢失时才会触发缓存未命中。

我不明白的是当数据溢出到后端时,我相信 Gemfire 中不存在参考。此外,用户可能不知道密钥 - 要对密钥执行获取操作,他可能需要对密钥以外的其他字段执行 OQL 查询。当我不知道密钥时,如何触发缓存未命中?

那么 Cache loader 是如何融入整体解决方案的呢?

4

1 回答 1

0

Geode 不会在 Query 操作期间调用 CacheLoader。

Geode 文档

加载器在获取操作期间缓存未命中时调用,除了将值返回给调用线程之外,它还使用新条目值填充缓存。

(重点是我自己的)

于 2016-04-20T23:28:43.413 回答