Таймауты прослушивания сокетов Tomcat - PullRequest
4 голосов
/ 17 апреля 2019

Мы только что обновились с JDK8 до JDK11, и наш Tomcat начал сообщать об этом предупреждении (мы используем изображение Docker tomcat:9-jre11-slim):

2019-04-17 10:17:35.060 WARNING [:tomcat] org.apache.catalina.core.StandardServer The socket listening for the shutdown command experienced an unexpected timeout [256] milliseconds after the call to accept(). Is this an instance of bug 56684?
java.net.SocketTimeoutException: Accept timed out
    at java.base/java.net.PlainSocketImpl.socketAccept(Native Method)
    at java.base/java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:458)
    at java.base/java.net.ServerSocket.implAccept(ServerSocket.java:551)
    at java.base/java.net.ServerSocket.accept(ServerSocket.java:519)
    at org.apache.catalina.core.StandardServer.await(StandardServer.java:607)
    at org.apache.catalina.startup.Catalina.await(Catalina.java:722)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:668)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)

Ошибка # 56684, упомянутая в предупреждении, относится к этому: https://bz.apache.org/bugzilla/show_bug.cgi?id=56684 - что, вероятно, является фиксированным и не очень актуальным.

  1. Можем ли мы игнорировать эту ошибку?Кажется, что это просто нечто внутреннее в Tomcat.
  2. Если это так, то достаточно ли поместить это в logging.properties?
org.apache.catalina.core.StandardServer = SEVERE

1 Ответ

2 голосов
/ 17 апреля 2019

Ошибка # 56684 является старой, это может быть (ожидалось?!) Регрессия, поскольку в сообщении об ошибке упоминается ошибка: -P
Это WARNING о сокете отключения прослушиванияобычно на порту 8005.

1- Предупреждение можно игнорировать при условии, что ваш метод остановки tomcat работает должным образом.
2- Если эти сообщения не спамят ваши журналы, я бы предложил не изменять конфигурацию журналирования..

Как упомянуто в ссылке выше, отключение сокета может быть отключено установкой порта на -1.Это, вероятно, сделало бы предупреждение уйти.

...