在大型企業中,使用NHibernate時,我應該默認使用ReadCommitted還是ReadUncommited事務隔離級別?NHibernate,我應該使用ReadCommitted還是ReadUncommited事務隔離級別?
通過使用ReadCommitted隔離,我一直面臨着一些鎖定SELECT(查詢)語句變得緩慢。
在大型企業中,使用NHibernate時,我應該默認使用ReadCommitted還是ReadUncommited事務隔離級別?NHibernate,我應該使用ReadCommitted還是ReadUncommited事務隔離級別?
通過使用ReadCommitted隔離,我一直面臨着一些鎖定SELECT(查詢)語句變得緩慢。
那麼,如果你使用的是SqlServer,並且ReadCommitted超時/鎖定有問題,這很容易解釋。您可能只需要運行:
ALTER DATABASE your_db SET SINGLE_USER WITH ROLLBACK IMMEDIATE ;
ALTER DATABASE your_db SET READ_COMMITTED_SNAPSHOT ON;
ALTER DATABASE your_db SET MULTI_USER;
嘗試此操作,然後重新測試您的readcommitted方法。我會堅持下去。
問題的核心:
我應該用READCOMMITTED或ReadUncommited事務隔離級別?
那麼,他們可以給出不同的結果。所以你實際上是問:
當更快時可以使用不同的結果集嗎?
答案取決於應用程序,只有你可以決定。但總的來說,客戶,特別是大型企業,對此並不是很寬容。
我討厭在ReadCommitted事務期間鎖定相同的問題。我的問題是,爲什麼這個解決了它?它應該從一開始就工作嗎?不管怎麼說,還是要謝謝你! – jinxen 2012-12-12 10:35:32