cacheloader:用例
使用GemFire的主要用例之一是,它用作保存最新数据的快速运行缓存(例如最近1个月),所有剩余数据都位于后端数据库中。我的意思是1个月后的Gemfire数据在1个月后溢出到数据库。 但是,当用户查找超过1个月的数据时,我们需要转到数据库并获取数据。 缓存加载器适用于对缓存未命中执行此操作并从数据库获取数据。关于缓存加载器,只有当我们对密钥执行Get操作并且密钥丢失时,才会触发缓存未命中。
我不明白的是,当数据溢出到后端时,我认为Gemfire中没有引用。用户可能也不知道Key - 要对Key执行get操作,他可能需要在除key之外的其他一些字段上执行OQL查询。 当我不知道密钥时,如何触发缓存未命中?
然后,Cache loader如何适应整体解决方案?
答案 0 :(得分:0)
在Query操作期间,Geode不会调用CacheLoader。
在get操作期间缓存未命中时调用加载程序,除了将值返回给调用线程外,它还使用新的条目值填充缓存。
(重点是我自己的)