NHibernate事务创建缓慢

NHibernate事务创建缓慢,nhibernate,transactions,fluent-nhibernate,Nhibernate,Transactions,Fluent Nhibernate,我使用Fluent NHibernate 1.3.0.733,它使用NHibernate 3.3.2.4000。 当我使用session.BeginTransaction()时,创建一个事务大约需要500毫秒 有时它也会超过一秒钟。有没有办法减少这一时间 这在带有MS SQL Server的ASP.NET应用程序中。 会话是使用在应用程序启动时创建一次的SessionFactory创建的。 我使用ASP.NET模块实现了每请求会话模式。 一切都很好。会话创建不需要时间,但事务创建很慢。对于简单

我使用Fluent NHibernate 1.3.0.733,它使用NHibernate 3.3.2.4000。 当我使用session.BeginTransaction()时,创建一个事务大约需要500毫秒 有时它也会超过一秒钟。有没有办法减少这一时间


这在带有MS SQL Server的ASP.NET应用程序中。 会话是使用在应用程序启动时创建一次的SessionFactory创建的。 我使用ASP.NET模块实现了每请求会话模式。
一切都很好。会话创建不需要时间,但事务创建很慢。

对于简单的查询和更新,完整的请求可能在10-20毫秒内执行,包括开始和提交事务的时间,因此在这种情况下显然有些可疑

在默认配置下,BeginTransaction()是NHibernate尝试从底层ADO.NET获取连接的时间。连接池是否已禁用?sql server的网络延迟是否很高?是否涉及分布式事务协调器


如果使用相同的连接字符串直接打开ADO.NET连接和事务,会发生什么情况?

是否确实要持久化会话?工厂初始化需要一段时间-您正在运行什么体系结构?你能给我更多的细节吗?谢谢。这是正确的。已在Web.config中禁用连接池。这是在开发机器上,我没有考虑到你的答案。启用后,会话和事务创建将下降到几毫秒。