当前位置: 首页 > 知识库问答 >
问题:

Apache点火:无法从包含过期策略的基本XML配置开始

咸亦
2023-03-14

我正在尝试使用一些XML配置启动Ignite,并且我正在遵循文档,但我无法启动它。以下是我的配置:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">
  <bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
    <property name="cacheConfiguration">
        <list>
            <!-- Partitioned cache example configuration (Atomic mode). -->
            <bean class="org.apache.ignite.configuration.CacheConfiguration">
                <property name="name" value="default"/>
                <property name="atomicityMode" value="ATOMIC"/>
                <property name="backups" value="1"/>
                <property name="eagerTtl" value="true"/>
            </bean>
        </list>
    </property>
    <property name="expiryPolicyFactory">
        <bean class="javax.cache.expiry.CreatedExpiryPolicy" factory-method="factoryOf">
            <constructor-arg>
                <bean class="javax.cache.expiry.Duration">
                    <constructor-arg value="MINUTES"/>
                    <constructor-arg value="5"/>
                </bean>
            </constructor-arg>
        </bean>
    </property>
  </bean>
</beans>

当我尝试使用这些配置时,我得到这些异常:

我检查了Ignite的源代码,就像异常状态一样,expiryPolicyFactory不是org.apache.Ignite.configration.IgniteConfiguration

我用于配置(用于设置过期策略)的 Ignite 文档位于此处:https://apacheignite.readme.io/docs/expiry-policies 其中指出:

<bean class="org.apache.ignite.configuration.CacheConfiguration">
    ...

    <property name="expiryPolicyFactory">
        <bean class="javax.cache.expiry.CreatedExpiryPolicy" factory-method="factoryOf">
            <constructor-arg>
                <bean class="javax.cache.expiry.Duration">
                    <constructor-arg value="MINUTES"/>
                    <constructor-arg value="5"/>
                </bean>
            </constructor-arg>
        </bean>
    </property>
</bean>

(我正在使用Ignite 2.7.6。)

我应该如何定义Ignite的过期策略?


共有1个答案

法景明
2023-03-14

我刚刚意识到问题是我把配置放错了位置。我有这个配置工作:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">
  <bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
    <property name="cacheConfiguration">
        <list>
            <!-- Partitioned cache example configuration (Atomic mode). -->
            <bean class="org.apache.ignite.configuration.CacheConfiguration">
                <property name="name" value="default"/>
                <property name="atomicityMode" value="ATOMIC"/>
                <property name="backups" value="1"/>
                <property name="eagerTtl" value="true"/>
                <property name="expiryPolicyFactory">
                  <bean class="javax.cache.expiry.CreatedExpiryPolicy" factory-method="factoryOf">
                      <constructor-arg>
                          <bean class="javax.cache.expiry.Duration">
                              <constructor-arg value="MINUTES"/>
                              <constructor-arg value="5"/>
                          </bean>
                      </constructor-arg>
                  </bean>
              </property>
            </bean>
        </list>
    </property>
  </bean>
</beans>
 类似资料:
  • 这是我的example-default.xml, 但上面给出的Bean属性“CacheExpiryPolicy”不可写或具有无效的setter方法。setter的参数类型和getter的返回类型匹配吗? 我怎样才能解决这个问题?

  • 在我的Gradle项目中,我对SQLite有一个依赖项。 这是我的build.gradle: 我尝试运行项目的构建,得到以下错误: 我的印象是,我收到的此错误与我有 2 个配置块的事实有关。一个用于配置我的 SQLite 模块,另一个用于处理所有模块的解析策略。这两个闭包似乎相互冲突。 有人对如何消除这两个闭包之间的冲突有什么建议吗?

  • 本文向大家介绍Apache下开启SSI配置使html支持include包含的方法,包括了Apache下开启SSI配置使html支持include包含的方法的使用技巧和注意事项,需要的朋友参考一下 写页面的同学通常会遇到这样的烦恼,就是页面上的 html 标签越来越多的时候,寻找指定的部分就会很困难,那么能不能像 javascript 一样写在不同的文件中引入呢?答案是有的,apache 能做到。

  • 主要内容:1 Redis设置key过期时间,2 Redis过期key删除策略简单介绍了Redis如何设置key过期时间,以及Redis过期key删除策略。 1 Redis设置key过期时间 Redis支持为所有类型的数据设置过期时间,对于类型,只需要使用命令或者命令: 对于某个key重新设置值,将会清除该key目前关联的过期时间。更常见的设置过期时间方式是依靠命令来设置或者更新过期时间为ttl秒/毫秒,依靠 命令来设置或者更新过期时间为timestamp 所指定的 秒数/

  • 我是钥匙斗篷大一新生。我想使用KeyCloak的authorizaion系统创建一个相当简单的基于组的访问控制系统。我尝试配置基于组的策略,但失败了,步骤如下: 1.创建一个“用户”的组名;2.配置资源、范围等;3.将策略设置为基于组的策略,但在这一步中,这是关于“Groups claim”的混淆,“Groups claim”的描述是:“一个用作用户组源的声明。如果声明存在,它必须是一个字符串数组

  • Kubernetes文档以及关于重新启动策略的Openshift文档显示,可以使用Always、Never或OnFailure配置POD。 那么我如何从部署配置中做到这一点呢?