2017-08-17 58 views
0

我已阅读this Hazelcast高密度记忆体的官方帖子。什么是Hazelcast高清内存? - 开/关堆?

我是否正确地认为这个HD内存仍然从JVM中消耗内存(应用程序正在运行,而不是在服务器中创建另一个JVM并仅将其用于hz实例)?

而且这种本地内存配置的唯一区别在于,内存是分配给堆而不是默认的堆内存分配?

回答

1

HDMS或Hazelcast高密度内存存储将内存分配到与Java堆相同的进程空间。这意味着该进程仍拥有所有内存,但Java堆是独立的,而Hazelcast分配的空间(堆外/非Java堆)不是垃圾收集的目标。值被序列化,并且生成的字节流被复制到本地内存,并在读取时被复制回Java堆区域并发送给请求者。

想象HDMS作为一个奇特的malloc实现:)

0

HDMS或高密度存储Store是Hazelcast企业HD解决方案的一部分。 HDMS是Java软件在每个节点上访问多个TB内存的一种方式,而不需要长时间和不可预知的垃圾收集暂停。该内存存储利用许多高性能内存管理技术提供了“堆外”内存的优势。 HDMS解决了与垃圾收集限制有关的问题,因此应用程序可以更高效地利用硬件内存,而无需额外的集群。它被设计成一个可插拔的内存管理器,它为IMap和JCache等不同的数据结构提供多个内存存储。