Я работаю над веб-приложением с Spring/Hibernate, после нескольких дней работы он стал очень медленным, поэтому я сделал heapdump, используя visualvm
, но я не знаю много о том, как анализировать результаты, я даже не знаю, что бы быть нормальным размером org.hibernate.impl.SessionFactoryImpl
в аналогичном стеке DEVELOPPEMENT, может кто-то пожалуйста, скажите мне accorning скриншоту, я хотел бы отметить, что я использую один веб-клиент (один пользователь вошел в)Что будет обычного размера объектов org.hibernate.impl.SessionFactoryImpl?
1
A
ответ
0
A ' нормальный размер объекта зависит от многих факторов (версия используемой библиотеки, версии JVM и ОС ...)
Дополнительную информацию о неглубоких и сохраненных размерах вы можете найти здесь here.
Я думаю, что SessionFactoryImpl в вашем случае не слишком большой (всего 1,7 МБ сохраненного размера) и не является причиной проблемы.
Однако небольшой размер кучи может быть проблемой, поэтому попробуйте проанализировать, использует ли приложение большую часть своего кучного пространства и соответственно увеличивает его.
Я использую тот же confiug, что и на сервере, на моей машине разработки, но только с одним пользователем, зарегистрированным в – bmscomp
. Каков максимальный размер кучи? Вы должны будете проверить память в то время, когда происходит замедление. Вы можете сделать это с помощью visualvm или других инструментов профилирования. В Интернете есть много учебников, посвященных тому, как это сделать, и я уверен, что на SOF посвящено много вопросов. –
на моей машине размер кучи машины составляет 1 046 478 848 B и 101 317 648 B используется У меня есть одна и та же база данных, сбрасываемая с сервера (производство) для значений памяти. Я сделал копию прошлого из visualvm – bmscomp