через 2 дня сеть перестала работать, но Tomcat все еще работает. Перезапуск Tomcat устраняет проблему - PullRequest
0 голосов
/ 19 июня 2020

Я запускаю Tomcat7 на сервере подготовки (ОС Ubuntu) для подготовки устройств. Проблема в том, что http перестает работать еще через пару дней, и когда я перезапускаю tomcat, все возвращается в норму. Я собрал ниже логи.

org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [main] in context with path [/web] threw exception [java.io.IOException: <p>An error occured</p>ClientAbortException:  java.net.SocketException: Broken pipe (Write failed)] with root cause
java.io.IOException: <p>An error occured</p>ClientAbortException:  java.net.SocketException: Broken pipe (Write failed)
        at com.owera.xaps.web.app.Output.deliverHTML(Output.java:455)
        at com.owera.xaps.web.app.Output.deliverResponse(Output.java:140)
        at com.owera.xaps.web.app.Main.doImpl(Main.java:183)
        at com.owera.xaps.web.app.Main.doGet(Main.java:94)
        at com.owera.xaps.web.app.Main.doPost(Main.java:84)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at com.owera.xaps.web.app.security.LoginServlet.doFilter(LoginServlet.java:248)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
        at java.lang.Thread.run(Thread.java:748)

Любая идея / помощь

1 Ответ

0 голосов
/ 19 июня 2020

Билл, вам нужно будет проанализировать дампы потоков и go один раз выполнить код вашего приложения. Похоже, объекты не получают G C.

Но перед этим, чтобы доказать эту аналогию, вы можете попробовать удвоить свою Память. В вашем catalina.sh/catalina.bat (в зависимости от ОС) попробуйте изменить -Xmx , -Xms и -XX: MaxPermSize и посмотрите, влияет ли это на время безотказной работы вашего сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...