Liferay 6.2 - tomcat 捆绑关闭问题

Liferay 6.2 - tomcat bundle shutdown issue

我 运行 遇到一个问题,我无法通过新 linux 服务器上的捆绑关闭脚本关闭服务器上的 Liferay 6.2 tomcat 捆绑包。

我采取的步骤是:

$ ./shutdown.sh
Using CATALINA_BASE:   /.../liferay-portal-6.2-ee-sp2/tomcat-7.0.42
Using CATALINA_HOME:   /.../liferay-portal-6.2-ee-sp2/tomcat-7.0.42
Using CATALINA_TMPDIR: /.../liferay-portal-6.2-ee-sp2/tomcat-7.0.42/temp
Using JRE_HOME:        /.../java/jdk1.7.0_75
Using CLASSPATH:       /.../liferay-portal-6.2-ee-sp2/tomcat-7.0.42/bin/bootstrap.jar:/.../liferay-portal-6.2-ee-sp2/tomcat-7.0.42/bin/tomcat-juli.jar

我在 Tomcat 日志中看到以下内容。

apr 27, 2015 1:18:23 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [] appears to have started a thread named [org.python.google.common.base.internal.Finalizer] but has failed to stop it. This is very likely to create a memory leak.
Apr 27, 2015 1:18:23 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [] appears to have started a thread named [MulticastListener-239.255.0.523305] but has failed to stop it. This is very likely to create a memory leak.
Apr 27, 2015 1:18:23 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [] appears to have started a thread named [pool-3-thread-1] but has failed to stop it. This is very likely to create a memory leak.
Apr 27, 2015 1:18:29 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/opensocial-portlet] appears to have started a thread named [com.google.inject.internal.Finalizer] but has failed to stop it. This is very likely to create a memory leak.
Apr 27, 2015 1:18:45 PM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-8080"]
Apr 27, 2015 1:18:45 PM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["ajp-bio-8009"]
Apr 27, 2015 1:18:45 PM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["http-bio-8080"]
Apr 27, 2015 1:18:45 PM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["ajp-bio-8009"]

我需要它来工作,以便干净地释放所有资源,并且我可以根据需要编写启动和关闭脚本。

有没有人看到并解决了这个问题?任何见解将不胜感激。

谢谢!

解决此问题并执行以下步骤后,tomcat 进程会在大约一分钟内使用关闭脚本关闭,无需手动终止进程。

  • 在 setenv.sh 中将 maxpermsize catalina_opts 参数增加到 512m(原为 200m)——这解决了关闭时日志中的 2 条内存泄漏消息,并且还导致了 tomcat进程正常关闭。
  • 删除 opensocial-portlet 在 maxpermsize 更改之前删除了 1 个内存泄漏错误,但进程仍未正确关闭。
  • 关闭时日志中有 1 个剩余内存泄漏错误,但目前并不能阻止 tomcat 关闭并且似乎是 tomcat 的一部分,不一定是由 liferay 引起的。根据下面的这个 LPS 问题,现在可以安全地忽略此消息 https://issues.liferay.com/browse/LPS-34498

希望这对某人有所帮助。