我正在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内存?
谢谢!
答案 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下