weblogic10启动时的JVM问题

本文介绍了WebLogic服务器启动时的JVM内存配置,包括如何在启动脚本中调整-Xms和-Xmx参数。同时,针对遇到的'Could not create the Java virtual machine. Invalid maximum heap size...'错误,提供了两种解决方案:一是调整HADOOP_HEAPSIZE,二是通过设置ulimit命令增大文件描述符限制。最后提醒,如果JDK是32位,内存分配超过其支持的最大值也会导致此问题。
摘要由CSDN通过智能技术生成

首先看看tomcat与weblogic关于JVM的段子:

(1)tomcat

Tomcat默认可以使用的内存为128MB,Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:

JAVA_OPTS=’-Xms[初始化内存大小]-Xmx[可以使用的最大内存]’
参数描述-XmsJVM初始化堆的大小
-XmxJVM堆的最大值,一般说来,你应该使用物理内存的80%作为堆大小。
例如:JAVA_OPTS=”-Xms256-Xmx512″

(2)weblogic

a)编辑WeblogicServer启动脚本文件;
BEA_HOME\user_projects\domains\domain-name\startWebLogic.cmd(startWebLogic.shonUnix)
BEA_HOME\user_projects\domains\domain-name\startManagedWebLogic.cmd(startManagedWebLogic.shonUnix)–这个是做集群的时候用的
b)编辑setJAVA_OPTIONS命令,如:setJAVA_OPTIONS=-Xms256m–Xmx256m;
(在UNIX下把MEM_ARGS=”-Xms1024m-Xmx1024m-Xmn128m”加到上述两个.sh文件中即可)
c)保存,重启即可。
注:在WebLogic中,为了获得更好的性能,BEA公司推荐最小Java堆等于最大Java堆。

其实,个人本次部署是显示JVM报错跟他们的设置方式不能解决问题,问题描述如下:

----------------------------START---------------------------------------------------------

Could not create the Java virtual machine.
Invalid maximum heap size: -Xmx4096m
The specified size exceeds the maximum representable size.

----------------------------END----------------------------------------------------------

普通的解决办法是:

修改hive-0.6.0\bin\ext\util\execHiveCmd.sh文件如下

  #HADOOP_HEAPSIZE=4096
  HADOOP_HEAPSIZE=128 

另外一种解决办法:设置环境变量ulimit -n  4096即可解決。


结果,当我仔细查看问题的时候,发现The specified size exceeds the maximum representable size.还有另外一种可能:如果是安装的JDK版本为32位,4g超过了JDK所支持的最大内存,也同样报该问题。

  通过 java -version 查看JDK的版本,
显示:当前工作目录下安装有一个32位的jdk(sun jdk),64位的jdk可以看到 64-bit的字符串,但32位是没有相关的信息的,真是如此,问题得以解决。


vi 此文件/etc/profile


echo $JAVA_HOME



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值