Как узнать, какое соединение занимает большую часть времени при выполнении запроса Hibernate? - PullRequest
1 голос
/ 04 апреля 2020

Мне задали этот вопрос в интервью. Предположим, вы написали запрос гибернации (собственный или HQL), и этот запрос содержит 3-4 соединения. Теперь запрос работает медленно. Так что, если я отлаживаю, как я узнаю, какое объединение занимает больше всего времени?

Я поговорил со своими коллегами, командой teamMates, спросил многих старших разработчиков и тоже искал inte rnet, но ничего не получил удовлетворенные ответы.

Я предложил следующие два подхода:

1: вы записываете информацию журнала с текущей отметкой времени в начале и конце запроса, чтобы вы могли проверить в журналах время, затраченное на запрос.

2: Или вы можете интегрировать log4j logger с hibernate, чтобы hibernate печатал журналы в подробном формате.

Это даже близко, чтобы решить эту проблему? я понятия не имею. Пожалуйста, помогите

1 Ответ

0 голосов
/ 04 апреля 2020

Ни. Вы должны войти в детали запроса, а затем передать запрос в ваш анализатор выполнения БД. Посмотрите на план запроса даст подсказку об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...