如何使用 Apache Ignite 作为 JSR 107 缓存?
How to use Apache Ignite as JSR 107 cache?
我发现 JSR 107 缓存的配置如下:
private final static CacheManager MANAGER =
Caching.getCachingProvider().getCacheManager();
private final static Cache<Long, Map<Integer, BufferedImage>> CACHE;
private final static Cache<Long, Map<Integer, ImageIcon>> CACHE_SERIALIZABLE;
static {
MutableConfiguration<Long, Map<Integer, BufferedImage>> config = new MutableConfiguration<>();
MutableConfiguration<Long, Map<Integer, ImageIcon>> javaFXConfig = new MutableConfiguration<>();
for(MutableConfiguration config0 : new MutableConfiguration[] {config, javaFXConfig}) {
config0.setStoreByValue(false)
.setStatisticsEnabled(true)
.setExpiryPolicyFactory(FactoryBuilder.factoryOf(
new AccessedExpiryPolicy(new Duration(TimeUnit.HOURS, 1))));
}
CACHE = MANAGER.createCache("cache",
config);
CACHE_SERIALIZABLE = MANAGER.createCache("cache-serializable",
javaFXConfig);
}
但是添加后
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-core</artifactId>
<version>1.7.0</version>
</dependency>
</dependencies>
到 pom.xml
缓存不会在值站点 Map
中存储任何值(https://github.com/krichter722/ignite-storage-failure 中提供了一个示例)。
我想 运行 一个只带嵌入式 Ignite 的本地内存设置。不幸的是,没有关于此用例的 "Getting started" 文档——只有复杂的分布式设置和非 JSR 107/Ignite 特定配置。
因为这是缓存框架最简单的用例,所以这必须是可能的。
我正在使用 Apache Ignite 1.7.0。
问题是:
config0.setStoreByValue(false)
Ignite 不支持引用存储。参见 https://github.com/cruftex/jsr107-test-zoo/blob/master/report.md#apache-ignite-1x-test
当然,在尝试时抛出异常会很好。
我发现 JSR 107 缓存的配置如下:
private final static CacheManager MANAGER =
Caching.getCachingProvider().getCacheManager();
private final static Cache<Long, Map<Integer, BufferedImage>> CACHE;
private final static Cache<Long, Map<Integer, ImageIcon>> CACHE_SERIALIZABLE;
static {
MutableConfiguration<Long, Map<Integer, BufferedImage>> config = new MutableConfiguration<>();
MutableConfiguration<Long, Map<Integer, ImageIcon>> javaFXConfig = new MutableConfiguration<>();
for(MutableConfiguration config0 : new MutableConfiguration[] {config, javaFXConfig}) {
config0.setStoreByValue(false)
.setStatisticsEnabled(true)
.setExpiryPolicyFactory(FactoryBuilder.factoryOf(
new AccessedExpiryPolicy(new Duration(TimeUnit.HOURS, 1))));
}
CACHE = MANAGER.createCache("cache",
config);
CACHE_SERIALIZABLE = MANAGER.createCache("cache-serializable",
javaFXConfig);
}
但是添加后
<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-core</artifactId>
<version>1.7.0</version>
</dependency>
</dependencies>
到 pom.xml
缓存不会在值站点 Map
中存储任何值(https://github.com/krichter722/ignite-storage-failure 中提供了一个示例)。
我想 运行 一个只带嵌入式 Ignite 的本地内存设置。不幸的是,没有关于此用例的 "Getting started" 文档——只有复杂的分布式设置和非 JSR 107/Ignite 特定配置。
因为这是缓存框架最简单的用例,所以这必须是可能的。
我正在使用 Apache Ignite 1.7.0。
问题是:
config0.setStoreByValue(false)
Ignite 不支持引用存储。参见 https://github.com/cruftex/jsr107-test-zoo/blob/master/report.md#apache-ignite-1x-test
当然,在尝试时抛出异常会很好。