2013-03-27 204 views
0

我在Red Hat 6 64位機器上安裝了Jackrabbit 2.4.0(部署爲rar到JBoss AS 7.1.0)。 JBoss JVM的最大堆大小設置爲8 GB。該機器有24GB的RAM。奇怪的是,當JBoss啓動時,它擁有近20 GB的虛擬大小(統計數據來自頂端)。 Linux頁面緩存(交換緩存)大約爲10 GB,因此係統實際上有5 GB左右的空閒內存。我不知道爲什麼頁面緩存很大,我試圖與保存Lucene索引的jackrabbit數據目錄的大小建立鏈接。目錄的大小約爲10 GB。 我的問題是:Lucene是否使用索引文件的內存映射?Jackrabbit Lucene索引

在此先感謝。

回答

3

我的問題是:Lucene是否使用索引文件的內存映射?

lucene使用內存映射只有if you ask它。您可能還需要閱讀this

0

JBOSS總駐留存儲器是由幾個因素,不是所有的這些都是堆:

  1. 彼爾姆根
  2. JAR和JVM
  3. 映射的字節陣列
  4. 線程棧(〜1MB每線程)

有你的應用程序ation和應用服務器本身。

所以當然你應該使用類似Visual VM的東西來查看發生了什麼的細節,但它只會幫助堆和燙髮。你需要在Linux上使用像nmap這樣的工具來發現其餘的東西。

+0

我用VisualVm來查看堆的使用情況和permgen,但一切似乎都很好。在負載情況下,堆的使用情況會有所改變。接近8 GB,然後CMS做它的工作和堆使用率接近1 GB。 – 2013-03-27 17:00:06

+0

我將如何使用nmap來找出過程中隱藏的「虛擬內存」? – 2013-03-27 17:01:03