在实践中,我们发现默认的NHibernate (v2.0和2.1) FlushMode=Auto非常昂贵。查看NHibernate源代码表明,用于确定需要刷新的内容的算法依赖于强制循环通过会话中的所有实体,并且在事务中运行的每个查询都会发生这种情况。
在一些生产场景中,有许多项目的更新,有多个查询,与FlushMode=Commit相比,我们已经看到使用FlushMode=Auto的过程要长100倍。
在执行涉及多个更新、多个查询等的“复杂”会话逻辑时,有关使用FlushMode的任何想法/建议/最佳实践。
对在nHibernate中优化AutoFlush算法有什么想法吗?
发布于 2009-11-17 01:25:44
这种速度缓慢是一个已知问题,在NH中被跟踪为NH-1365/GitHib Issue 857
在NH中有三种刷新模式:
https://stackoverflow.com/questions/1726656
复制相似问题