Java Tomcat8 - 分配更多内存; catalina.sh不见了?

时间:2015-03-23 15:34:56

标签: java tomcat8

我正在linux(RedHat)上运行Tomcat8服务器。它运行的机器总共有15GB Ram,我想为tomcat服务器分配11GB。目前它只有3.3GB可供使用。

我安装了openjdk 64位。

我尝试将CATALINA_OPTS设置为-Xms512M -Xmx11g,将JAVA_OPTS设置为-d64 -Xms256m -Xmx12g

我找到了几个关于setenv.sh或catalina.sh的说法,我都找不到。它不在tomcat8/bin和catalina_home以及catalina_base都指向/ root。

那么如何增加最大值。我的tomcat服务器的avaialable内存?

谢谢!

3 个答案:

答案 0 :(得分:8)

似乎catalina.sh要么在最新的tomcat版本中不再存在,要么与我使用亚马逊vm这一事实有关,他们会有一些我怀疑的修改过的tomcat8发行版。< / p>

解决方案: 在usr/share/tomcat8/conf/下有一个tomcat8.conf文件。 添加行JAVA_OPTS="-Xms1g -Xmx12g"就可以了。

<强>更新 请查看本文后面的评论

答案 1 :(得分:0)

在像RedHat这样的发行版中,标准的Tomcat结构分散在不同的位置,主catalina.sh确实不存在。

您可能会找到两个配置文件。假设Tomcat 8,你会发现:

  • /etc/tomcat8/tomcat8.conf - 这是主文件
  • /etc/sysconfig/tomcat8 - 这是每个服务文件,它继承自上述内容。

此分割的设计使您可以运行多个共享某些设置的Tomcat实例,并为第1 /第2 /第3个实例设置不同的设置。

如果要更改软件的位置,例如,通常这将被共享,因此您可以更改/etc/tomcat8/tomcat8.conf,但是如果要更改命令行参数(将上下文传递给Tomcat实例)或者更改特定实例的内存,您可以使用/etc/sysconfig/tomcat8。您的第二个tomcat实例可以命名为tomcat8b,在这种情况下,它的配置文件将是/etc/sysconfig/tomcat8b

如果您无意运行第二个实例,请更改任一文件。

答案 2 :(得分:-4)

catalina.sh位于tomcat / bin下