Tomcat Server 9: se bloquea después de un tiempo

Tomcat Server 9: se bloquea después de un tiempo

Recientemente actualicé mi servidor de aplicaciones de Tomcat 6 a Tomcat 9. Después de la actualización, migramos una de nuestras aplicaciones al nuevo servidor, actualizando todas las bibliotecas para pasar a la nueva versión de JAVA.

En la aplicación usamos Spring Security y hemos configurado un par de filtros para autenticación y autorización.

Una vez que implementamos los paquetes en este servidor, la aplicación se ejecuta durante un tiempo, tal vez un par de horas, pero el rendimiento se degrada con el tiempo. Cuando el rendimiento se degrada significativamente, lo siguiente en el volcado de hilos que tenemos en el servidor

en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) en org.apache.tomcat.websocket.server.WsFilter .doFilter(WsFilter.java:53) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) en com. opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:39) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:166) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:317) en org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) en org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security .web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.session.SessionManagementFilter.doFilter (SessionManagementFilter.java:84) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170) en org.springframework.security.web. FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy. java:331) en org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security .web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.authentication.logout.LogoutFilter .doFilter(LogoutFilter.java:116) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) en org .springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain .doFilter(FilterChainProxy.java:331) en org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331 ) en org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework. security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:214) en org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) en org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java: 347) en org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain .doFilter(ApplicationFilterChain.java:166) en org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712) en org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459) en org. apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:384) en org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl. java:530) en org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase .service(HttpJspBase.java:70) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache. jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385) en org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java: 331) en org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security .web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.FilterChainProxy.doFilterInternal (FilterChainProxy.java:214) en org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) en org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) en org.springframework. web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java: 166) en org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712) en org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459) en org.apache.catalina.core.ApplicationDispatcher .doForward(ApplicationDispatcher.java:384) en org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org. apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java: 70) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:385) en org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java: 331) en org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security .web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.FilterChainProxy.doFilterInternal (FilterChainProxy.java:214) en org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) en org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) en org.springframework. web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java: 166) en org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712) en org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459) en org.apache.catalina.core.ApplicationDispatcher .doForward(ApplicationDispatcher.java:384) en org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org. apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java: 70) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:385) en org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.FilterChainProxy.doFilterInternal( FilterChainProxy.java:214) en org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) en org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) en org.springframework.web .filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166 ) en org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712) en org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459) en org.apache.catalina.core.ApplicationDispatcher. doForward(ApplicationDispatcher.java:384) en org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org.apache .jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70 ) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile( JspServlet.java:385) en org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) en org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331) en org.springframework.security.web.FilterChainProxy.doFilterInternal( FilterChainProxy.java:214) en org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) en org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) en org.springframework.web .filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) en org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166 ) en org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:712) en org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:459) en org.apache.catalina.core.ApplicationDispatcher. doForward(ApplicationDispatcher.java:384) en org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org.apache .jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70 ) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile( JspServlet.java:385) en org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) en javax.servlet.http.HttpServlet.service(HttpServlet.java :741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385) en org.apache.jasper.servlet. JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) en org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:530) en org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:624) en org.apache.jsp.error_jsp._jspService(error_jsp.java:531) en org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) en javax.servlet.http.HttpServlet.service(HttpServlet.java :741) en org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476) en org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385) en org.apache.jasper.servlet. JspServlet.service(JspServlet.java:329) en javax.servlet.http.HttpServlet.service(HttpServlet.java:741)

Lo que vemos es que esta sección de código se repite al menos 25 veces y el hilo se muestra como ejecutable.

¿Puede guiarme dónde centrarme en la búsqueda del problema?

gracias de antemano

información relacionada