2015-07-07 4 views
0

Я прочитал где-то commit = flush + commit.Hibernate Connection Count Count

Я знаю только, что, когда мы вызываем session.flush(), наши операторы выполняются в базе данных, но не фиксируются.

Предположим, мы не вызываем метод flush() на объект сеанса, и если мы вызываем метод commit ... он будет внутренне выполнять работу над выполнением операторов в базе данных и затем совершать.

фиксации = вровень + фиксации (в случае функциональности)

Мне любопытно, сколько сетевое соединение это создаст.

+0

Это может быть интересно для вас: http://stackoverflow.com/questions/780755/nhibernate-flush-how-it-works/780918#780918 –

ответ

2

Мне любопытно, сколько сетевого соединения это создаст.

Обычно интересует количество SQL-запросов, которые производятся в базе данных. Это относится к выявлению любых проблем/узких мест в производительности. Эта информация зависит от вашей конкретной модели домена и количества запрашиваемых/измененных данных.

Все эти вызовы будут выполнены через одно соединение SQL с базой данных. Таким образом, для каждой фиксации будет одно сетевое подключение (если вы не работаете с распределенной транзакцией, которая является редким сценарием).