-2

我必须创建一个非常高性能的应用程序。目前,我正在为我的数据访问层使用实体框架。我的应用程序几乎每秒都必须插入一些通信数据。我发现实体框架很慢;完成 SaveChanges() 方法有大约 2 秒的延迟。

我在想我有以下选择: 1. 使用 ADO.NET 自己创建数据访问层;使用存储过程或即席查询 2. 使用企业库数据访问层 3. 使用 NHibernate 4. 使用存储库工厂:http ://pooyakhamooshi.blogspot.com/search?q=repository

你怎么看?哪个插入数据更快?哪个设置更快?

4

2 回答 2

3

如果只是性能问题,那么直接使用 ADO.NET 是不可能的,因为您将使用的每个框架都会在后台使用 ADO.NET。但是,性能提升必须是值得的,除非您插入数百万条记录,否则它可能不值得。

我建议您查看分析您的应用程序以了解为什么您的应用程序需要 2 秒来保存信息,它不应该那么慢。也许你有一个 n + 1 的性能问题。解决这个问题可能会给您使用实体框架(或任何其他标准 DAL)所需的性能。把你的精力集中在这上面。

于 2009-11-26T23:38:09.350 回答
1

普通的 ADO.NET 再次取决于您如何实现它,但在性能方面它应该是最好的,但开发它需要更长的时间。

我发现这个网站很有帮助: http: //ormbattle.net/

BLToolkit 似乎是性能方面最好的免费 ORM 工具;这是我第一次听说!

于 2011-06-05T10:50:46.627 回答