我有NHibernate配置與Fluent NNibernate連接到PostgreSQL數據庫。NHibernate ISessionFactory.OpenSession()不打開數據庫連接
我有一個工作人員類,它將ISessionFactory作爲構造函數參數並使用隊列中的消息。對於每條消息,工作進程調用ISessionFactory.OpenSession()並執行一些數據庫處理。
當我添加更多工作進程時,系統的性能保持不變,這很奇怪。 經過一番調查後,我意識到所有工作進程正在使用單個數據庫連接。例如,我會添加8個工作進程,但在數據庫上我只能看到一個數據庫連接。
我的理解是,ISessionFactory.OpenSession()將打開一個新的數據庫連接,除非連接池已滿。
所以是我的理解錯誤或是這和Postgres NHibernate驅動程序的問題。
我的問題很可能在於信息是如何消耗掉,而不是與NHibernate如何處理連接。 – 2011-06-01 13:54:57