2016-08-11 9 views
0

Я запускаю Tomcat 8.5.3 на Windows Server 2008R2 и Java 1.8.0_92. Процесс потребляет много CPU (~ 50% от 4 процессоров).Высокая загрузка процессора с помощью клиентского опроса JSSE на Tomcat 8.5

JTop показывает, что двумя наиболее потребляющими потоками являются https-jsse-nio-443-ClientPoller-0 и https-jsse-nio-443-ClientPoller-1.

Нити в основном зацикливание на четыре stacktraces Фес:

sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method) 
sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296) 
sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278) 
sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159) 
sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
    - locked [email protected] 
    - locked [email protected] 
    - locked [email protected] 
sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:791) 
java.lang.Thread.run(Thread.java:745) 

.

sun.nio.ch.WindowsSelectorImpl$SubSelector.processFDSet(WindowsSelectorImpl.java:345) 
sun.nio.ch.WindowsSelectorImpl$SubSelector.processSelectedKeys(WindowsSelectorImpl.java:315) 
sun.nio.ch.WindowsSelectorImpl$SubSelector.access$2900(WindowsSelectorImpl.java:278) 
sun.nio.ch.WindowsSelectorImpl.updateSelectedKeys(WindowsSelectorImpl.java:495) 
sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:172) 
sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
    - locked [email protected] 
    - locked [email protected] 
    - locked [email protected] 
sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:791) 
    java.lang.Thread.run(Thread.java:745) 

.

sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket0(Native Method) 
sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket(WindowsSelectorImpl.java:473) 
    - locked [email protected] 
sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:174) 
sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
    - locked [email protected] 
    - locked [email protected] 
    - locked [email protected] 
sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:791) 
java.lang.Thread.run(Thread.java:745) 

.

java.lang.Object.notifyAll(Native Method) 
sun.nio.ch.WindowsSelectorImpl$StartLock.startThreads(WindowsSelectorImpl.java:189) 
    - locked [email protected] 
sun.nio.ch.WindowsSelectorImpl$StartLock.access$300(WindowsSelectorImpl.java:181) 
sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:153) 
sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) 
    - locked [email protected] 
    - locked [email protected] 
    - locked [email protected] 
sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) 
org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:791) 
java.lang.Thread.run(Thread.java:745) 

Любая идея?

ответ

2

У меня была аналогичная проблема на Tomcat 8.5.4/Linux, где я видел очень высокий уровень использования процессора в потоках опроса (например, https-jsse-nio-443-ClientPoller-0 и 1). Модернизация до 8.5.5, похоже, решила проблему.

Возможно, эта ошибка: https://bz.apache.org/bugzilla/show_bug.cgi?id=60030

+1

Спасибо за ссылки. Название проблемы звучит неправильно, но, похоже, это та же проблема. Я решил проблему, переключив разъем на NIO2. –