1

我有一个加载数百万条记录的项目。我将使用 asp.net mvc 3 或 4。我确信我的页面加载速度会非常慢,因为从服务器检索到大量数据。我一直在创建 SQL Server 代理作业以执行早期查询并将其保存在将在站点中使用的临时表中。我相信还有很多更好的方法。请帮忙。我听说过用于客户端数据库的 IndexedDB 或 WebSQL。任何帮助/建议将不胜感激。

我在stackover中的第一个帖子/问题!

提前致谢!

4

4 回答 4

2

你可能想看看分页。如果搜索返回 700,000 多条记录,您可以将它们分成不同的页面(每页 100 条或其他内容),这样页面就不会永远加载。

在这里检查类似的问题

于 2013-06-19T06:28:04.087 回答
1

我一直在处理一个类似的问题,500K 数据存储在客户端IndexedDB。我使用多个网络工作者将数据存储在客户端(仅在 chrome 中支持),我只将 id 和在数据上使用的操作发布到服务器端。

为了获得更高的速度,我发现使用 4-8 个网络工作者来实现最佳数据传输速率,每次调用都检索和存储 1K 到 2.5K 项,即大约 1MB 的数据。

你应该考虑的事情是:

  • 限制同步过程中允许的操作
  • 服务器与客户端的数据更新 - 我使用始终在服务器端更新数据并调用同步过程将更改的数据同步回客户端的方法
  • 你要在内存中存储什么 - Google Chrome 限制为 1.6GB,所以要小心内存泄漏,我目前在同步期间使用不超过 300MB - 100-150MB 是正常工作期间的平均值
于 2013-06-19T15:49:36.783 回答
0

Paging is definitely the way to go. However, you want to make the site responsive, so what you should do is use Ajax to run in the background to load up the data continuously while the letting the user to interact with the site with initial set of data.

于 2013-06-19T08:03:04.693 回答
0

您需要按页拆分数据。从数据库中检索特定范围。你真的需要一次数百万行吗?我认为首先应该有一个过滤器。

于 2013-06-19T07:17:46.007 回答