Я рассматриваю возможность использования Fluent NHibernate для нового приложения с SQL Server 2008, и у меня возникают проблемы с пониманием поведения обработки подключений, которое я вижу.
Я отслеживаю соединения, используя sp_who2, и вот что я вижу:
При создании SessionFactory открывается одно соединение. Это соединение
Кажется, остается открытым, пока приложение не будет убито.
Соединение не открывается при открытии нового сеанса. (Это нормально, я понимаю, что NHibernate ждет до последнего момента для создания соединений с базой данных).
Новое соединение не открывается, даже когда я запускаю запрос через NHibernate. Я должен предположить, что он использует соединение, созданное при создании SessionFactory, которое все еще открыто. Я установил точку останова после запроса (до закрытия сеанса), и в sp_who новых сеансов не появилось.
Запуск всего приложения через одно соединение недопустим (очевидно). Как я могу убедиться, что каждая ISession получает свое собственное соединение? Я уверен, что здесь что-то очевидно, что мне не хватает ...
Заранее спасибо.