Tomcat Server 9 - しばらくするとハングする

Tomcat Server 9 - しばらくするとハングする

最近、アプリケーション サーバーを Tomcat 6 から Tomcat 9 にアップグレードしました。アップグレード後、すべてのライブラリをアップグレードして新しい JAVA バージョンに移行し、アプリケーションの 1 つを新しいサーバーに移行しました。

アプリケーションでは Spring Security を使用し、認証と承認用のフィルターをいくつか構成しています。

このサーバーにパッケージを展開すると、アプリケーションは数時間ほど実行されますが、時間の経過とともにパフォーマンスが低下します。パフォーマンスが大幅に低下すると、サーバー上のスレッドダンプに次の内容が表示されます。

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

このコードセクションは少なくとも 25 回繰り返され、スレッドは実行可能として表示されます。

問題を探す際にどこに焦点を当てればよいか教えていただけますか?

前もって感謝します

関連情報