我正在使用C ++瘦客户端API,我想在5分钟后从缓存中删除数据。我正在通过docker连接并使用持久性存储来点燃。在C ++库的文档中,我找不到与“过期”相关的任何内容,并且尝试将expirey选项添加到我的Docker容器读取的ignite.xml中,但这似乎也不起作用。我将数据放入缓存中,并在5分钟后检查了数据(我也在10、20、30分钟后检查了数据),并且数据仍然存在。
这是我添加到ignite.xml中的内容:
<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>
是的,C ++瘦客户端目前不支持此功能。
我认为您可以在服务器端完全定义一个具有到期的缓存,或者仅定义一个具有到期策略的缓存模板https://apacheignite.readme.io/docs/cache-template,并从c ++客户端使用它。