问题标签 [hazelcast-imap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
771 浏览

hazelcast - 在 ArrayDataSerializableFactory 无法为 id 创建实例的情况下获取 HazelcastSerializationException

当我的 Web 应用程序查询 Hazelcast 缓存以获取数据时,我遇到了一个问题,HazelcastSerializationException 被抛出。我们正在使用 hazelcast-all-3.6.6.jar。

以下是从服务器日志收集的相同堆栈跟踪 -

此异常在 Hazelcast 类中,在获取 QueryResultRow 后,它无法进行序列化。以下是完全失败的相同代码片段:

以下是 toObject() 方法的实现:

0 投票
1 回答
532 浏览

java - Hazelcast Rest API 不返回任何内容

在 linux (rh) 上运行 hazelcast (3.4)。我在一个实例中创建了 MAP,添加了几条记录:

我可以使用 java 客户端 HazelcastClient 读取地图,但在使用 curl 或浏览器点击 REST 接口时看不到任何内容:

实际上浏览器显示响应代码 204 - 没有内容

0 投票
1 回答
209 浏览

hazelcast - Hazelcast 无法加载具有“大量”条目的地图

尝试加载包含超过 40000 个条目的地图时,我遇到了 Hazelcast 问题。

如果我将条目数限制为大约 40000,Hazelcast 可以很好地加载地图。更多的结果会导致以下异常被重复抛出。我正在使用 Hazelcast MapLoader。无论结果大小如何,MapLoader.getAllKeys 都会成功执行。每批要加载的对象都会引发异常。
我正在使用带有单个节点的 Hazelcast 版本 3.7.2。非常感谢任何帮助或指导。

0 投票
1 回答
712 浏览

java - hazelcast 分布式加载是否阻塞?

目前,我有一个支持 MapStore 的 IMap。此 IMap 在启动时加载并具有数百万个条目。当地图完全加载时,客户端使用 Imap.values() 和谓词检索条目。这种加载对我来说在启动时工作得很好。

现在,我必须定期重新加载所有数据(例如,每 2 小时)。我正在使用 IMap.loadAll(true) 强制重新加载。MapStore (loadAllKeys() + loadAll(keys)) 大约需要 4 分钟才能完成完整的加载。似乎在这 4 分钟内,所有通过谓词向 imap 发送查询的客户端都被阻塞,直到重新加载完成。

就我而言,我无法在 4 分钟内阻塞集群(实际上一秒钟都不会)。

  1. 真的是 Imap.loadAll 阻塞了谓词查询吗?
  2. 可以将 imap 配置为非阻塞或存在 IMap.loadAll() 的非阻塞替代方案。

我正在尝试使用 HC 3.7.2,有 2 个节点和 java 8。

0 投票
0 回答
241 浏览

java - Hazelcast 'IdentifiedDataSerializable':writeData HashMap 实例

我已经开始使用 Hazelcast 的 IdentifiedDataSerializable 接口来序列化一些类,当我需要 writeData 一个简单的 java.util.map 实例时,有些东西无法正常工作 - 我使用

但它会引发异常:java.io.NotSerializableException

如果我只存储地图的一个条目,如下所示:

那么它的工作原理!

我在这里想念什么?

另一个问题:在我的课堂上,我有以下声明:

我需要writeData\readData 'static final'会员吗?还是因为他们static没有必要?

谢谢!

0 投票
1 回答
1026 浏览

java - 尝试将 Map 存储在 Hazelcast 缓存中时无法序列化它

我正在尝试从数据库中获取数据并放入地图并尝试将该地图存储在hazelcast 缓存服务器中。但它给出了错误

com.hazelcast.nio.serialization.HazelcastSerializationException:无法序列化“java.util.TreeMap”。

下面是我的代码。

由于最后一行打印语句没有被执行,这意味着 TreeMap 没有被添加到缓存中。请帮忙?

0 投票
3 回答
1993 浏览

hazelcast - 如果使用自定义对象作为键,则无法从 Hazelcast 的地图中检索元素

我正在使用 Hazelast Map 并尝试将对象存储在我的自定义类的对象的键上,即HMapKey. 这是HMapKey课程的片段。

正如您在上面的代码中看到的,我只使用keyCode了 equals() 方法来比较两个对象。所以无论time变量有什么价值。但是当我在 Hazelcast 的 Map 中将此对象用作键并尝试检索它时,我认为 Hazelcast 检查键类的每个变量,因此,即使我有相同的keyCode变量值和不同的time变量,Hazelcast 也会将我返回为NULL. 是否有任何配置告诉 Hazelcast 不要进行所有变量检查并equals()仅使用现有方法?

这是我尝试从地图中检索数据的代码

意味着,在插入时,我创建了类似的键对象,new HMapKey("code1",123)但在检索它时,我正在创建新对象new HMapKey("code1",0),这将我作为空值返回。而如果我尝试new HMapKey("code1",123)它工作正常。

0 投票
2 回答
1517 浏览

java - 在节点启动时创建和填充 Hazelcast 地图

节点启动后,有没有办法在 hazelcast(3.4 版)节点上执行代码片段?

这个想法是:一旦 hazelcast 节点之一开始创建地图(不等待 .getMap 在客户端执行)并从数据库中填充数据,因此当客户端请求数据时,地图已经填充。

0 投票
1 回答
646 浏览

java - Hazelcast 缓存没有变空以存储更新的记录

我想在 5 分钟后让我的 hazelcast 地图为空,以便我可以将更新的 Db 记录放入其中。但它没有变空并且仍然包含旧记录。下面是我在 hazelcast 缓存服务器中的 hazlecast.xml 文件。

我的 Java 代码是这样的:

榛树声明:

getDataFromCache()的方法实现:--

0 投票
1 回答
665 浏览

hazelcast - 如何触发 Hazelcast NearCache 的预加载?

我了解 NearCache 仅在对 IMap 上的该键执行第一次获取操作后才加载。但我很想知道是否有任何方法可以触发 NearCache 的预加载及其集群中的所有条目。

用例
键是一个简单的 bean 对象,值是一个 TIntHashMap 类型的 DAO 对象,其中包含许多条目。

大小:
值对象的大小范围从 0.1MB 到 24MB(>90% 的条目小于 5MB)。IMap 中的条目数范围为 150-250。

基准测试
第一次调用 get 操作需要 2-3 秒,后来调用需要 <10 毫秒。

现在我创建了下面的例程,它读取 IMap 并读取每个条目以刷新 NearCache。