управление спящими сессиями - PullRequest
2 голосов
/ 28 октября 2010

Я пытаюсь отладить веб-приложение, которое имеет проблемы с производительностью. я включил запись в спящий режим и вижу много этого:

2010-10-28 10:58:00,423 DEBUG [org.hibernate.impl.SessionImpl] - opened session at timestamp: 5276786198212608
2010-10-28 10:58:01,390 DEBUG [org.hibernate.impl.SessionImpl] - opened session at timestamp: 5276786202173440
2010-10-28 10:58:01,418 DEBUG [org.hibernate.impl.SessionImpl] - opened session at timestamp: 5276786202288128
2010-10-28 10:58:26,181 DEBUG [org.hibernate.impl.SessionImpl] - opened session at timestamp: 5276786303717376

Я обеспокоен тем, что нет журналов о "закрытом сеансе"

я сейчас смотрю на это: http://static.springsource.org/spring/docs/2.5.x/reference/orm.html но в нем нет ничего, что дало бы мне душевное спокойствие по поводу бревен

Ответы [ 2 ]

3 голосов
/ 28 октября 2010

Глядя на источник , кажется, что сообщение регистрируется в конструкторе SessionImpl.java .При закрытии сеансов имеется соответствующий оператор журнала (см. Метод public Connection close() throws HibernateException), но он регистрируется на уровне TRACE.Я не знаком с slf4j, но из этого документа похоже, что TRACE находится на более высоком уровне, чем DEBUG.Поэтому попробуйте увеличить количество журналов (возможно, до ALL?) И проверьте, закрыты ли сеансы.

1 голос
/ 28 октября 2010

Как вы получаете доступ к сеансам?Используете ли вы аннотацию весенней транзакции?

Мы используем шаблон гибернации в нашем текущем приложении ... хотя это, по-видимому, больше не требуется.Я почему-то не вижу, чтобы это выглядело как отладка, хотя я вижу другие операторы отладки инициализации гибернации.

В любом случае, вы, вероятно, можете получить ссылку на фабрику сеансов и вызвать sessionFactory.getStatistics ().)

Возможно, вам придется вызвать setStatisticsEnabled (true)

http://docs.jboss.org/hibernate/stable/core/api/org/hibernate/stat/Statistics.html

Это, по крайней мере, даст вам количество открытых сессий, чтобы увидеть, будет ли оно постоянно расти,

Согласно ответу binil, также имеется отчет об ошибке при открытии / закрытии записей журнала на разных уровнях журнала.http://opensource.atlassian.com/projects/hibernate/browse/HHH-2425

...