在Ubuntu 10.04中正确设置Tomcat6

我们有一个在Ubuntu 10.04LTS上运行的Tomcat6实例。 我们的testing盒只是运行Tomcat6的Windows机器。 两台机器(Linux和Windows)都有1GB的内存

通过Windows中的Tomcatconfiguration工具,我可以设置JVM的min / max / permgen大小。 那些分别被设定为256/512/128。 现在在Ubuntu的框中,我已经尝试在几个不同的地方设置JVM选项,包括:

在/ etc / environment中添加JAVA_OPTS和CATALINA_OPTS在$ CATALINA_HOME / bin / catalina.sh中添加JAVA_OPTS在$ CATALINA_HOME / bin中创buildsetenv.sh并添加JAVA_OPTS将JAVA_OPTS直接添加到/etc/init.d/tomcat6取消注释JAVA_OPTS和在/ etc / default / tomcat6中修改它

几乎所有这些方法都不起作用,除了直接修改/etc/init.d/tomcat6(可能还有/ etc / default / tomcat6改变,但是我只是这么做)。 不过,我的理解是,当您更改这些设置时,应该只为整个tomcat6实例使用一个JVM,并且这些内存在应用程序之间共享。

在我们的窗口框中,tomcat6作为一个服务运行,似乎performance这样。 然而,当我在linux上看htop时,有20多个tomcat6实例(我有一个应用程序每隔X秒使用chron触发内部作业,所以也许这些是线程?或者它们是实际实例),所有这些内存设置。 该应用程序运行良好一点,但最终结束了locking。 我猜这些应用程序中的每一个认为它有512m的工作,从来没有GC的,然后lockingtomcat完全。

什么是正确的方法来设置所有这一切?

您必须在CATALINA_HOME / bin / setenv.sh文件中设置JAVA_OPS

一旦他们在那里,你应该实际上看到执行/etc/init.d/tomcat6启动时的设置