服务如何配置JVM

为了使JVM的资源利用更合理,往往需要手动设置JVM的初始值。下面将详细介绍不同环境下的JVM配置。

1、如果是应用程序,则:java -Xms800m -Xmx800m 你的类名

java -Xms32m -Xmx800m className

就是在执行JAVA类文件时加上这个参数,其中className是需要执行的确类名。(包括包名)
2、IDEA

我现在开发用的工具是idea,配置路径如下:

至于要配置多大的初始内存,可以根据自己机器的内存进行更改。

JVM内存设置多大合适?Xmx和Xmn如何设置?参看链接:https://blog.csdn.net/losetowin/article/details/78569001;有对JVM设置的介绍。

实例,以下给出1G内存环境下java jvm 的参数设置参考:

JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true "

3、Eclipse的配置路径如下:很大的web工程,用tomcat默认分配的内存空间无法启动,如果不是在myeclipse中启动tomcat可以对tomcat这样设置:

TOMCAT_HOME/bin/catalina.bat 中添加这样一句话:

set JAVA_OPTS= -Xmx1024M -Xms512M -XX:MaxPermSize=256m

如果要在myeclipse中启动,上述的修改就不起作用了,可如下设置:

在Eclilpse中修改启动参数,在VM arguments 加入了-Xms32m -Xmx800m,问题解决。

4、如果用的tomcat,在windows下,可以在tomcat的bin目录下的

catalina.bat 中rem Guess CATALINA_HOME if not defined
set CURRENT_DIR=%cd%

后面添加如下配置:

rem Guess CATALINA_HOME if not defined
set "CURRENT_DIR=%cd%"
set JAVA_OPTS=-Xms1024m -Xmx1024m -Xmn=256m -XX:PermSize=128M -XX:MaxPermSize=128m -Djava.awt.headless=true
if not "%CATALINA_HOME%" == "" goto gotHome

这里的set的意思就是设置环境变量的意思。

注意:只有startup.bat启动tomcat,设置才能生效,如果利用windows的系统服务启动tomcat服务,上面的设置就不生效了,就是说set JAVA_OPTS=-Xms384m -Xmx384m没起作用。

 5、Linux系统

在tomcat的/bin/catalina.sh里进行配置,如下:

export JAVA_OPTS="-Xms512m -Xmx2048m -Xss1024K -XX:PermSize=256m -XX:MaxPermSize=512m -XX:-UseGCOverheadLimit"
# OS specific support.  $var _must_ be set to either true or false.
cygwin=false

export的意思是将局部变量设置为环境变量。

JAVA_OPTS是系统变量,准备金系统现在的配置,需要再加上上述的jvm配置信息。

如果错过太阳时你流了泪,那你也要错过群星了。
在所有的矛盾中,要优先解决主要矛盾,其他矛盾也就迎刃而解。
不要做个笨蛋,为失去的郁郁寡欢,聪明的人,已经找到了解决问题的办法,或正在寻找。
原文地址:https://www.cnblogs.com/szrs/p/12059688.html