gpt4 book ai didi

java - hazelcast 存储负载未被调用

转载 作者:太空宇宙 更新时间:2023-11-04 06:41:40 24 4
gpt4 key购买 nike

我正在使用 hazelcast 3.2.3。我添加了一个类 Test1,它存储在 hazelcast map Test1Map (IMap) 中。我添加了一个名为 Test1StoreLoad 的类,它实现了存储/加载/删除调用。在加载所有 key 实现中,我使用 JDBC 从数据库加载相关 key 。我的印象是,一旦我的应用程序启动并且我第一次获得对 map 的引用,加载/存储实现将被调用,从而调用 loadAll 功能。然而,这并没有发生(loadAll 根本没有被调用)。还可以做什么来调试这个?

我在 xml 文件中添加了以下配置来实现存储加载:

<map name="Test1Map">
<in-memory-format>BINARY</in-memory-format>
<backup-count>0</backup-count>
<async-backup-count>1</async-backup-count>
<time-to-live-seconds>0</time-to-live-seconds>
<max-idle-seconds>0</max-idle-seconds>
<eviction-policy>LRU</eviction-policy>
<max-size policy="PER_NODE">0</max-size>
<eviction-percentage>25</eviction-percentage>
<map-store enabled="true">
<class-name>models.hcast.storeload.Test1StoreLoad</class-name>
<write-delay-seconds>0</write-delay-seconds>
</map-store>

我们可以更改通过 XML 配置而不是 API 加载数据的 EAGER/LAZY 选项吗?

最佳答案

我使用以下内容加载我的配置文件。尽管我的类路径指向包含 xml 配置文件的文件夹,但由于某种原因(我缺乏理解或配置错误),xml 文件没有被选中(并且可能是 hazelcast-default.xml 文件被选中)。我通过传入文件位置切换到 FileSystemXmlConfig(我不想添加系统属性,但会查看它)。

这是我尝试过的。

HazelcastInstance hcast = null;
try {
Config config = new FileSystemXmlConfig("C:/Users/username/workspace/HazelcastTest/config/hazelcast.xml");
hcast= Hazelcast.newHazelcastInstance(config);
}
catch (FileNotFoundException e) {
logger.error("file cannot be found exception");
}

关于java - hazelcast 存储负载未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24615773/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com