namedCache 到 Localcahce infinispan-config-12.1.xsd

Posted

技术标签:

【中文标题】namedCache 到 Localcahce infinispan-config-12.1.xsd【英文标题】:namedCache to Localcahce infinispan-config-12.1.xsd 【发布时间】:2021-11-18 08:47:13 【问题描述】:

我有类似这样的配置,尝试升级到 12.1 版本时出现错误,

检查您的配置是否是最新的 Infinispan '12.1.4.Final' 并且如果您在类路径中有适当的依赖关系: org.infinispan.commons.CacheConfigurationException:ISPN000327:不能 在命名空间中查找元素“命名缓存”的解析器 'urn:infinispan:config:12.1'.

我找不到以下配置的替代品,请输入您的建议。

<infinispan
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:infinispan:config:5.1 http://www.infinispan.org/schemas/infinispan-config-5.1.xsd"
        xmlns="urn:infinispan:config:5.1">

    <namedCache name="test-cache">
        <eviction strategy="LIRS" maxEntries="1000"/>
        <expiration lifespan="5400000" maxIdle="4400000"/>
    </namedCache>
</infinispan>

这是我正在尝试升级的当前版本。

 <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-core</artifactId>
         <version>12.1.7.Final</version
</dependency>

【问题讨论】:

【参考方案1】:

documentation 建议这样做:

<infinispan>
   <cache-container>
      <!-- Configures a local cache. -->
      <local-cache name="local"/>
   </cache-container>
</infinispan>

这将为您提供本地缓存,replicated-cachedistributed-cache 存在类似的元素。等等。如今的驱逐似乎是由记忆元素处理的,REMOVE 取代了长期弃用(现已消失)的策略,如LIRS 等(不知道为什么或是否对策略进行更细粒度的控制仍然可能),请参阅文档中的Eviction:

<local-cache name="maximum_count">
  <encoding media-type="application/x-protostream"/>
  <memory max-count="500" when-full="REMOVE"/>
</local-cache>

Expiration 似乎仍然像以前一样工作。

虽然 xsd 架构往往很难阅读,但此 xml 的 one 至少不是非常复杂,但大多是直截了当的。

【讨论】:

大部分是正确的,但要遵循最新的架构,请使用以下内容: 二进制元素自 11.0 起似乎已被弃用,至少 XSD 是这么说的:Deprecated since 11.0. Use instead the 'encoding' element to specify the media type of keys and values, plus the storage attribute as 'HEAP'. Store keys and values as bytes in the Java heap. Cache entries are serialized to binary representations. Note that binary storage violates object equality. This occurs because equality is determined by the equivalence of the resulting byte[] instead of the object instances.

以上是关于namedCache 到 Localcahce infinispan-config-12.1.xsd的主要内容,如果未能解决你的问题,请参考以下文章

hdu 4405 Aeroplane chess (概率dp)

SSE:如何将 _m128i._i32[4] 减少到 _m128i._i8

C语言,算1到20阶乘的和

求素数只需要求到i*i<=x

制作一个包含(i,i * i)的字典,其中i为1到n

考虑 x^i+y^i=z^i, x<=y<=z<=m 和 2<=i<=n (m 和 n 是输入) m 可以从 5 变化到 100 n 可以从 2 变化到 100