【问题标题】:Oracle coherence caching, specifying expiry timeout while adding the object into cacheOracle一致性缓存,在将对象添加到缓存时指定到期超时
【发布时间】:2016-10-20 18:39:13
【问题描述】:

我正在使用 oracle 一致性缓存。

为了配置过期,在xml文件中有一个名为'expiry-delay'的参数来配置过期。

我想知道在将对象添加到缓存中时是否可以通过过期持续时间。

感谢您对此的任何帮助。

【问题讨论】:

    标签: java caching oracle-coherence


    【解决方案1】:

    将新项目放入缓存时尝试设置 TTL 值

    Object put(Object oKey,
           Object oValue,
           long cMillis)
    

    CacheMap JavaDoc

    【讨论】:

      【解决方案2】:

      您可以在您持有的NamedCache 上调用方法put(Object oKey, Object oValue, long cMillis)。调用此方法时,您的条目将在cMillis 提交到缓存(如果您具有持久性,则提交到数据库)之后过期。通过这种方式,Coherence 将忽略方案定义中设置的默认值。 如果你想使用默认值,你可以使用CacheMap.EXPIRY_DEFAULT 作为值。

      【讨论】:

      • 如何在架构定义中指定默认值。我们尝试在架构中添加 标记,但没有成功。还有其他选择吗?
      • 请参阅docs.oracle.com/cd/E24290_01/coh.371/e22837/cache_config.htm 了解有关到期延迟的更多信息。它可能不像您预期​​的那样工作,因为这个概念有点不同。我强烈建议阅读链接中的定义。
      • 自 Coherence 12.2.1 起:缓存条目在达到缓存到期时间后主动从后备映射中逐出,不再需要缓存操作来启动逐出。 (链接:12.2.1 Release Notes12.1.3 DevGuide12.2.1.4 DevGuide)
      猜你喜欢
      • 2020-07-10
      • 2019-05-24
      • 1970-01-01
      • 1970-01-01
      • 2018-10-28
      • 2013-11-04
      • 2016-04-16
      • 2013-06-19
      • 1970-01-01
      相关资源
      最近更新 更多