tomcat - GC 参数 -XX :+ExplicitGCInvokesConcurrent cause tomcat timeout

标签 tomcat garbage-collection jvm java

这几天遇到了一个奇怪的问题,我们在tomcat上的一些solr应用在大量连接的情况下经常超时。

几天前,我们添加了 gc arg -XX:+ExplicitGCInvokesConcurrent,因此我们尝试删除此 arg,连接数下降,超时时间也下降。

但是我们一些带有这个gc arg的应用程序没有遇到这个问题,生病的应用程序和健康的应用程序之间的区别是jdk版本。 sick apps的jdk版本是1.6.0_21,heathy apps是1.6.0_26。

更改jdk版本也能解决问题。

谁能看出这是旧版本jdk的bug,还是gc args的bug?

最佳答案

是的,-XX:+ExplicitGCInvokesConcurrent 的使用似乎对较旧的 JDK 有问题。你可以看看this bug ,自 6u22 以来已解决(有趣的是你说 6u21 失败而 6u26 有效)。

关于tomcat - GC 参数 -XX :+ExplicitGCInvokesConcurrent cause tomcat timeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11101048/

相关文章:

apache-spark - 在 spark 2.3 中使用 G1GC 垃圾收集器

memory-leaks - JavaFX Node 对象不被垃圾回收

java - 有效线程数

java - 为什么在 Tomcat 和独立运行时 Spring 不注入(inject) @PersistenceContext entityManager

java - 缺少 tomcat8.5 的 Jar 文件

java - 积极的垃圾收集器策略

java - 一个 jar 中的多个 java 进程

jsp - org.apache.jsp.foo_jsp._jspInit 处的 java.lang.NullPointerException(foo_jsp.java :22)

tomcat - 使用 Tomcat 的 Spring Stream 聚合应用程序

java - 内存不足且 CPU 消耗低