как уменьшить потребление ресурсов процессора моим приложением - PullRequest
0 голосов
/ 30 августа 2018

В течение некоторого времени мое приложение стало очень сильно загружать процессор. В течение некоторого времени мое приложение стало очень сильно загружать процессор. Я установил JProfiler, и, насколько я понимаю, существует проблема с c3p0 в hibernate. Я использую hibernate 4.3, jsf2.2.10 + primefaces 5.2, tomcat 8.5, также использую ehcache.

Вот некоторые результаты, которые я напечатал.

imagem consumo mchange

Threads .data

thread tree

hibernate config

1 Ответ

0 голосов
/ 30 августа 2018

Вы можете перейти на использование Hikari пула соединений,

См. Анализ пула Бретта Вулдриджа C3P0:

Мы насчитали более 230 использований синхронизированных блоков и методов, а также wait () и notifyAll () для различных классов. Сравните с 0 для HikariCP и Vibur-DBCP, которые используют конструкции без блокировки. Широкое и широкое использование блокировок приводит к склонному к взаимоблокировке коду, и доказательством этого может служить поиск в Google "c3p0 deadlock".

Мы даем C3P0 кредит за то, что он покрывает все основные принципы. К сожалению, C3P0 также последовательно занимает последнее место в каждом из микробенчмарков.

Небезопасные значения по умолчанию По умолчанию не:

проверка соединений во время getConnection ()

...