2010-05-12 81 views
0

同時使用NHProf分析NHibernate我注意到很多時間都花在實體構建上,或者至少花費在查詢時間之外(數據庫往返)。我目前正在進行的項目在應用程序啓動時預取一些靜態數據(進入二級緩存)。結果集中有大約3000行(可能是30列)在75 ms內查詢。 NHProf觀察的整體持續時間約爲13秒!這是典型的beheviour嗎?我知道NHibernate不應該用於批量操作,但我並不認爲實體實例化會非常昂貴。有沒有方法可以提高NHibernate關於實體實例的性能?

在這種情況下是否有改進性能的方法,還是我必須忍受它?

THX, denny_ch

+1

如果數據庫通信不是性能問題,則應運行.NET性能分析器來查找瓶頸位置。 – 2010-05-12 13:16:22

+0

這是一個很好的觀點。謝謝,邁克爾! – dchowitz 2010-05-12 15:31:33

回答

0

我沒有這樣做,但我認爲你可以定義到imlement自己的實體創建攔截器。 There are some specs here

通過提供您自己的實施,您可以決定分配和處置策略,從而優化您在實體創建中的表現。

+0

額外的攔截器如何幫助提高性能? – dchowitz 2010-05-12 15:37:01

+0

執行!=附加 – mxmissile 2010-05-12 21:12:38

相關問題