【问题标题】:TTL-Expiration on a cluster node does not update my clients NearCache集群节点上的 TTL 过期不会更新我的客户端 NearCache
【发布时间】:2020-01-24 15:42:18
【问题描述】:

我有一个包含多个节点的缓存集群,其中包含一个缓存映射配置,该配置仅在 10 分钟内有效(TTL = 600 秒)。此外,我还有一些为该缓存配置了近缓存的客户端节点。

在调试时我看到以下行为:

如果我在集群节点上显式驱逐该缓存中的条目,则相应的近缓存条目也将被驱逐。 (内部执行 DeleteOperation)。

如果条目超时,则集群节点中的条目被删除,但近缓存中的条目仍然有效。所以客户端会收到一个过期的条目。

当我为近缓存明确设置 TTL 时,缓存也被正确驱逐。

我的期望是 TTL-Expiration 也会通过集群传播到所有近端缓存。我做错了什么还是设计使然?

【问题讨论】:

    标签: caching hazelcast hazelcast-imap


    【解决方案1】:

    同时,我们接受该行为作为一项功能,并将近缓存视为单独的缓存层。

    从这个角度来看,这样设计是有意义的。所以集群对 TTL 或 IdleTime 有一些规则,但客户端可以对项目的话题性有不同的要求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-21
      • 1970-01-01
      • 2016-01-15
      • 2019-12-01
      • 1970-01-01
      • 2013-05-21
      • 2017-03-13
      • 2018-04-27
      相关资源
      最近更新 更多