1

我们在性能不佳的系统中使用 nHibernate 1.2。如果我们迁移到最新版本的 nHibernate,性能会有一些提升吗?

总的来说,迁移到最新版本的 nHibernate 是个好主意吗?

编辑:我想使用以下功能来提高性能。
1.二级缓存。2. 连接表。3. MultiQuery 到批量查询。

4

4 回答 4

5

如果性能是您的问题,请考虑使用NHibernate Profiler

NHibernate Profiler 是一个实时可视化调试器,允许开发团队获得有价值的洞察力和视角来了解他们对 NHibernate 的使用。

于 2010-03-08T15:17:00.147 回答
2

完成从 1.2 到 2.0.1 再到 2.1.2 的转换后,我可以坚定地说我不会回去。

MultiCriteria 实现对我来说是一个游戏规则改变者(无论是性能还是编码风格)。二级缓存可能与 1.2 相同,对于 Join Table 我没有使用它们,所以我无法评论。

改进是全面的,某些部分已被重写。除了相同的命名空间更改和类名更改之外,没有任何东西被破坏,功能是相同的。总的来说,我推荐它。

于 2010-03-11T10:38:13.830 回答
1

取决于 - 没有。我会考虑直接进入开发主干....以获得添加/更好的 LINQ 支持。不知道什么时候可以测试,但我会冒险。“当前”的 LINQ 很难使用(没有“StartsWith”查询,所以即使是基本的搜索表单也大多不可用)。

如果你可以冒险,那是值得的。仅 LINQ 本身始终是迁移的原因 - 实现更好搜索的相当残酷的一步;)

于 2010-03-08T15:07:22.400 回答
1

仅当您需要使用 NHibernate 2.0 提供的最新功能时。这是列出新功能的链接。

路线图

我的经验告诉我为什么会有这样的表达:“如果它没有坏,就不要修理它!” 站立。这里也一样。不过,NH 2.1.2.GA 相当有趣。您应该问的问题是“我是否需要这些新功能,或者它们是否对我的项目的未来扩展有用?” 如果是,那就去吧,否则,保持它的工作方式。

于 2010-03-08T15:08:20.913 回答