1
我有一臺帶有英特爾(R)奔騰(R)4 CPU 2.53GHz和2GB內存的舊PC。我通過javax.mail.Message
實例進行迭代,並且想知道內存使用的上限。JVM中有多少個對象太多?
假設「規則」大小的消息,有多少可以輕鬆加載?十萬,幾十萬?百萬?
只是尋找一些棒球WAG的請。
的heap像這樣:
run:
DEBUG: nntp: newsrc loading /home/thufir/.newsrc
DEBUG: nntp: newsrc load: 5 groups in 16ms
Aug 05, 2012 3:52:17 AM net.bounceme.dur.usenet.driver.FetchBean <init>
INFO: max 259522560
Aug 05, 2012 3:52:17 AM net.bounceme.dur.usenet.driver.FetchBean <init>
INFO: allocatedMemory 16252928
Aug 05, 2012 3:52:17 AM net.bounceme.dur.usenet.driver.FetchBean <init>
INFO: freeMemory 14160912
Aug 05, 2012 3:52:17 AM net.bounceme.dur.usenet.driver.FetchBean <init>
INFO: totalFreeMemory 257430544
Aug 05, 2012 3:52:17 AM net.bounceme.dur.usenet.driver.FetchBean <init>
INFO: useMemory 2092016
我這是從本地Leafnode NNTP服務器使用GNU NNTP library加載iterating通過Message
的。
檢查消息的標頭,然後在適當的情況下,使用JPQL將某些標頭持久保存到數據庫。順便說一句,這是關於Ubuntu 11.10的GNOME經典之作。
你的堆的內存大小是多少?因爲你不能把整個RAM分配給java堆。 – SiB 2012-08-05 10:41:45
@BharatSinha我更新了堆的一些輸出。 – Thufir 2012-08-05 10:54:45
有多少對象應該不重要,但它們佔用的內存是多少。如何解釋你的應用程序做什麼?也許一些優化是可能的。 – 2012-08-05 10:58:10