论坛首页 Java企业应用论坛

JVM内存最大能调多大

浏览 45329 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-05-16  

      在服务器上部署了程序,服务器是4G内存,web容器使用的是tomcat5,开始启动时提示内存不够,我用了

set JAVA_OPTS=-Xms1100m -Xmx1100m -XX:MaxNewSize=280m -XX:MaxPermSize=280m

方法来增加了JVM的内存,但是发现两个值加起来不能超过1500M,在网上搜了下,说SUN的虚拟机最大只能支持1.5G内存左右,但是我想,把他调到3G以上,大家在这方面有什么好办法没啊?

   发表时间:2007-05-16  

saysoc 写道:

      在服务器上部署了程序,服务器是4G内存,web容器使用的是tomcat5,开始启动时提示内存不够,我用了

set JAVA_OPTS=-Xms1100m -Xmx1100m -XX:MaxNewSize=280m -XX:MaxPermSize=280m

方法来增加了JVM的内存,但是发现两个值加起来不能超过1500M,在网上搜了下,说SUN的虚拟机最大只能支持1.5G内存左右,但是我想,把他调到3G以上,大家在这方面有什么好办法没啊?

 

一般32位的机器做大只能用到2G内存,4G内存可以跑2个tomcat,通过Apache做cluster.





0 请登录后投票
   发表时间:2007-05-16  
用bea的会比sun的大一点点,不过距离你要求的3G还是差很远。
0 请登录后投票
   发表时间:2007-05-16  
Linux下可以超过3G,Windows下最大也就1.6G左右(x86).
0 请登录后投票
   发表时间:2007-05-16  
我曾经试过用bea的开到1.6G内存,发现运行极不稳定,tomcat总是自动关闭。
后面调到1.4G就稳定了。
不知道楼主什么项目需要用到那么大内存,会不会是内存泄漏了啊
0 请登录后投票
   发表时间:2007-05-16  
http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=121&threadID=35704
0 请登录后投票
   发表时间:2007-05-16  
http://www.javayou.com/showlog.jspe?log_id=967&cat_id=3

今天分析了当前比较流行的几个不同公司不同版本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还是不熟
0 请登录后投票
   发表时间:2007-05-16  
上64位Linux,装64位JVM,上3G很轻松
0 请登录后投票
   发表时间:2007-05-16  
我自己的机子用的2003, 试了一下那个命令, 发现只有1G多点, 怎么回事?
0 请登录后投票
   发表时间:2007-05-16  
我们用的是sun的jdk,开了5G
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics