在大型企业中,使用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