2017-08-17 57 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等不同的數據結構提供多個內存存儲。