歲月如哥
          人生非夢
          posts - 50,comments - 144,trackbacks - 0
          今天分析了當前比較流行的幾個不同公司不同版本JVM的最大內存,得出來的結果如下:

          公司     JVM版本     最大內存(兆)client     最大內存(兆)server
          SUN     1.5.x     1492     1520
          SUN     1.5.5(Linux)     2634     2660
          SUN     1.4.2     1564     1564
          SUN     1.4.2(Linux)     1900     1260
          IBM     1.4.2(Linux)     2047     N/A
          BEA     JRockit 1.5 (U3)     1909     1902

          除非特別說明,否則JVM版本都運行在Windows操作系統下

          附:如何獲得JVM的最大可用內存

          在命令行下用 java -XmxXXXXM -version 命令來進行測試,然后逐漸的增大XXXX的值,如果執行正常就表示指定的內存大小可用,否則會打印錯誤信息。

          實際發現版本上有細微差別的JDK最大容許內存值都不盡相同,因此在實際的應用中還是要自己試驗一下看到底內存能達到什么樣的值。

          通過這個表想說明的是,如果你的機器的內存太多的話,只能通過多運行幾個實例來提供機器的利用率了,例如跑Tomcat,你可以多裝幾個Tomcat并做集群,依此類推。



          ≡≡≡ 網友評論 ≡≡≡
          東子 網友說:
          Windows下的最大內存應該跟NT內核對地址空間的保留也有關系, 好像默認情況下NT內核要占用高2G的地址空間, 所以應用程序撐死能獲得的內存不會超過2G; 記得有一個參數可以讓NT只占1G內存, 這樣應用程序就有3G地址空間可用, 相應環境下JVM能允許的最大內存可能也會升高.

          at 05-10-06 00:04
          purpureleaf 網友說:
          windows的每個應用(不是尋址)的尋址空間一般是2g或者3g,取決于一個參數。但是只要使用一組特定的函數分配內存,每個應用的尋址空間可以遠遠超過4g

          jdk可能是設置不了那個大的內存,但那不是windows造成的,是jdk造成的,在linux上一樣設置不了。看來做java的朋友對windows還是不熟
          posted on 2008-09-21 15:01 歲月如歌 閱讀(2184) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 勃利县| 枞阳县| 嵊泗县| 从江县| 鲁甸县| 莆田市| 天柱县| 西平县| 潍坊市| 新兴县| 多伦县| 泉州市| 博兴县| 广水市| 沅陵县| 古浪县| 吴忠市| 务川| 南涧| 象州县| 柘荣县| 房山区| 文山县| 精河县| 敦煌市| 景洪市| 济阳县| 保康县| 塘沽区| 小金县| 永川市| 巴彦淖尔市| 中山市| 满城县| 绿春县| 石泉县| 丹阳市| 天等县| 富平县| 民和| 收藏|