线程将随着时间的流逝而更新,以尝试避免可能的内存泄漏 - java

我尝试部署我的战争文件。

但是部署成功之后。

我得到此日志:

[root@dfdfdf bin]# export JAVA_HOME="/usr/java/jdk1.8.0_112/"
[root@dfdfdfdbin]# ./startup.sh
Using CATALINA_BASE:   /root/apache-tomcat-8.5.8
Using CATALINA_HOME:   /root/apache-tomcat-8.5.8
Using CATALINA_TMPDIR: /root/apache-tomcat-8.5.8/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_112/
Using CLASSPATH:       /root/apache-tomcat-8.5.8/bin/bootstrap.jar:/root/apache-tomcat-8.5.8/bin/tomcat-juli.jar
Tomcat started.
[root@satubangau bin]# tail -f ../logs/catalina.out
06-Feb-2017 07:21:27.881 SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ROOT] created a ThreadLocal with key of type [org.springframework.core.NamedThreadLocal] (value [Request attributes]) and a value of type [org.grails.web.servlet.mvc.GrailsWebRequest] (value [ServletWebRequest: uri=/error]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
06-Feb-2017 07:21:27.986 INFO [Thread-17] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio-80"]
06-Feb-2017 07:21:27.988 INFO [Thread-17] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["https-jsse-nio-443"]
06-Feb-2017 07:21:27.994 INFO [Thread-17] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["ajp-nio-8009"]
06-Feb-2017 07:21:27.995 INFO [Thread-17] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio-80"]
06-Feb-2017 07:21:27.996 INFO [Thread-17] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["https-jsse-nio-443"]
06-Feb-2017 07:21:27.997 INFO [Thread-17] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["ajp-nio-8009"]
/root/apache-tomcat-8.5.8/bin/catalina.sh: line 434: /usr/java/jdk1.8.0_111/bin/java: No such file or directory
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=256m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
06-Feb-2017 07:54:26.688 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.5.8
06-Feb-2017 07:54:26.691 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Nov 3 2016 21:14:13 UTC
06-Feb-2017 07:54:26.692 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         8.5.8.0
06-Feb-2017 07:54:26.692 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
06-Feb-2017 07:54:26.694 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            4.0.4-042stab120.16
06-Feb-2017 07:54:26.694 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
06-Feb-2017 07:54:26.694 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/java/jdk1.8.0_112/jre
06-Feb-2017 07:54:26.695 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_112-b15
06-Feb-2017 07:54:26.695 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
06-Feb-2017 07:54:26.695 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /root/apache-tomcat-8.5.8
06-Feb-2017 07:54:26.696 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /root/apache-tomcat-8.5.8
06-Feb-2017 07:54:26.697 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/root/apache-tomcat-8.5.8/conf/logging.properties
06-Feb-2017 07:54:26.697 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
06-Feb-2017 07:54:26.698 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
06-Feb-2017 07:54:26.699 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
06-Feb-2017 07:54:26.700 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms256m
06-Feb-2017 07:54:26.700 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx512M
06-Feb-2017 07:54:26.700 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:PermSize=256m
06-Feb-2017 07:54:26.701 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=256m
06-Feb-2017 07:54:26.701 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:-UseGCOverheadLimit
06-Feb-2017 07:54:26.703 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:-PrintGCDetails
06-Feb-2017 07:54:26.703 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.awt.headless=true
06-Feb-2017 07:54:26.703 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dfile.encoding=UTF-8
06-Feb-2017 07:54:26.703 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/root/apache-tomcat-8.5.8
06-Feb-2017 07:54:26.777 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/root/apache-tomcat-8.5.8
06-Feb-2017 07:54:26.777 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/root/apache-tomcat-8.5.8/temp
06-Feb-2017 07:54:26.777 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
06-Feb-2017 07:54:27.777 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-80"]
06-Feb-2017 07:54:27.882 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
06-Feb-2017 07:54:27.887 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["https-jsse-nio-443"]
06-Feb-2017 07:54:29.784 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
06-Feb-2017 07:54:29.790 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
06-Feb-2017 07:54:29.792 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
06-Feb-2017 07:54:29.795 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 6017 ms
06-Feb-2017 07:54:29.986 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
06-Feb-2017 07:54:29.987 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.8
06-Feb-2017 07:54:30.098 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /root/apache-tomcat-8.5.8/webapps/ROOT.war
06-Feb-2017 07:55:07.702 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

Configuring Spring Security Core ...
... finished configuring Spring Security Core

看到这条线

06-Feb-2017 07:21:27.881 SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ROOT] created a ThreadLocal with key of type [org.springframework.core.NamedThreadLocal] (value [Request attributes]) and a value of type [org.grails.web.servlet.mvc.GrailsWebRequest] (value [ServletWebRequest: uri=/error]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.

我不知道为什么会得到这个日志,但是我正在使用grails 3.1.1。

我想知道,此消息是在谈论我的Applicationserver的状况。

参考方案

我已经遇到过同样的问题,也从Here获得了解决方案。在应用程序服务器中发生此问题。但是,应用程序服务器也与memcached服务器通信。经过观察,memcached服务器的内存已满。重新启动memcached之后,一切都很好。

如果您正在使用Redis,也可以进行检查。

获取异常java.lang.NoSuchMethodError:org.apache.neethi.Constants.isPolicyElement - java

我正在通过SSL连接到Web服务。我导入了证书并将其添加到Java密钥库。然后,我为Web服务创建了客户端存根使用wsdl2java。当我在程序中使用它并尝试调用服务时,它会引发follownig(异常的一部分)Exception in thread "main" java.lang.NoSuchMethodError: org.apac…

等效于C#中的ASM类(Java) - java

我的任务是将项目转换,同时将其升级,从Java转换为C#。但是,我发现以下类及其功能存在问题:import jdk.internal.org.objectweb.asm.tree.AbstractInsnNode; import jdk.internal.org.objectweb.asm.tree.ClassNode; import jdk.interna…

Apache POI背景颜色样式似乎不起作用 - java

晚上好!我在apache poi v.14版本中遇到了一些麻烦,当我使用Libreoffice或Excel打开渲染的xlsx时,样式未正确应用。我有以下代码:class... { private XSSFCellStyle doubleLockStyle; /** * Create default cell style. * * @param myWorkB…

JAVA:字节码和二进制有什么区别? - java

java字节代码(已编译的语言,也称为目标代码)与机器代码(当前计算机的本机代码)之间有什么区别?我读过一些书,他们将字节码称为二进制指令,但我不知道为什么。 参考方案 字节码是独立于平台的,在Windows中运行的编译器编译的字节码仍将在linux / unix / mac中运行。机器代码是特定于平台的,如果在Windows x86中编译,则它将仅在Win…

java:继承 - java

有哪些替代继承的方法? java大神给出的解决方案 有效的Java:偏重于继承而不是继承。 (这实际上也来自“四人帮”)。他提出的理由是,如果扩展类未明确设计为继承,则继承会引起很多不正常的副作用。例如,对super.someMethod()的任何调用都可以引导您通过未知代码的意外路径。取而代之的是,持有对本来应该扩展的类的引用,然后委托给它。这是与Eric…