如何在Linux机器上运行tomcat上运行的Web应用程序的JVM参数

时间:2015-07-22 07:17:22

标签: java tomcat garbage-collection concurrent-mark-sweep

我想在我的生产服务器上部署时使用与我的Web应用程序的默认Parallel GC不同的垃圾收集器,该服务器将在linux上运行。

比如说我想在应用程序中使用Concurrent Mark Sweep GC。

现在我已经读过,我们可以通过添加CAST( ROUND(columnA *1.00 / columnB, 2) AS FLOAT) 和各种其他JVM参数来对其进行微调。

因此,在使用maven打包我的战争时,我包含了额外的JVM参数。 例如:

-XX:+UseConcMarkSweepGC

战争是打包的,我将它部署在运行在linux环境中的tomcat服务器上。

注意我在Windows机器上打包这个战争,然后使用putty和winscp在linux机器上部署战争

我不明白这将如何确保CMS GC正在运行?我的意思是我不应该在我的应用程序运行的地方包含这些更改吗?

或者在打包时包含这些JVM参数就足够了。

如果我想要包含各种其他JVM参数,包括打包战争是好事还是我们需要将这些包含在其他地方呢?

请解释。

1 个答案:

答案 0 :(得分:3)

使用[TOMCAT_HOME]/bin/catalina.sh

JAVA_OPTS中添加这些参数
JAVA_OPTS=-Dgwt.extraJvmArgs="-Xms2048m -Xmx2048m -XX:PermSize=512M -XX:MaxPermSize=512M -XX:+UseConcMarkSweepGC"

在打包war文件时提供这些文件没有任何影响。