我目前正在开发一个具有大型数据集的.NET(3.5)页面,性能是位于两个不同位置(相隔12小时)的用户主要关注的问题。
目标&要求:
我尝试了两种不同的方法,但无法满足两个用户。这是我到目前为止所尝试的内容:
摘要:客户端网格对于远离Web服务器距离的用户非常有用。但是,对于坐在服务器旁边的用户来说并非如此。现在坐在服务器旁边的用户必须坐下来等待JQuery / Javascript构建表。
摘要:服务器端网格对于坐在下一个到Web服务器的用户是有益的(因为它几乎瞬间加载 - 3 MB的时间仅为1秒)。同样地,对于坐在地球另一侧的用户来说,网络传输会受到影响 - 对于3.MB页面来说会超过30秒。
谷歌搜索和实验后;我仍然不知道如何让这两个用户都满意。
*注意:我决定不包含任何源代码,因为它不会以任何可能的方式为您提供帮助。
我知道没有一种尺寸适合所有解决方案,但我正在寻找能够满足这两个用户的至少中间立场的东西。
一般来说,至少,我想给用户一个页面被“加载”(快速)的印象 - 在所有数据到达之前开始渲染;虽然它可能仍在加载数据。即也许无限滚动。
我正在寻找创意;因此,如果您的建议包括将服务器移动到全球各地;增加你的带宽或任何其他牵强附会的想法;如果你把自己的想法留给自己,我将不胜感激。
感谢。
d
答案 0 :(得分:2)
您可以进一步使用带有服务器端分页的客户端网格来改善访问时间。我认为使用服务器端分页的gridview会做得很好。如果您需要一次显示所有记录,那么这是一个单独的问题。
答案 1 :(得分:2)
服务器端分页?
您说创意,那么您是否已开启gzip来压缩您发送的数据?另外,尝试缩小html?
答案 2 :(得分:1)
我已成功使用DHTMLX Grid进行此项使用。它具有无限滚动和分页功能。只请求页面/可见滚动区域上显示的数据(减少在任何给定时间通过线路发送的数据量。它也可以自定义,并且有许多其他功能,您可能会觉得有用。