首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery数据存储插件太慢-需要更换

问jQuery数据存储插件太慢-需要更换
EN

Stack Overflow用户
提问于 2012-07-25 09:12:15
回答 3查看 37.9K关注 0票数 15

我已经使用jQuery 可数据插件大约两年了,到目前为止效果很好。当我需要同时加载大约45000记录时(单击按钮并等待加载数据的页面)--加载时间太长,无法等待,这时就出现了这个问题。

下面是我使用Chrome浏览器进行的测试(数据来自它的Network ):

可数据插件打开:

5476记录:

24 requests ❘ 256.26KB transferred ❘ 19.80s

(onload: 19.80s, DOMContentLoaded: 18.58s)

45071记录:

34 requests ❘ 1.85MB transferred ❘ 11.1min

(onload: 11.1min, DOMContentLoaded: 11.0min)

可数据插件关闭( jQuery数据表初始化完成):

5476记录:

21 requests ❘ 255.84KB transferred ❘ 6.57s

(onload: 13.26s, DOMContentLoaded: 13.28s)

45071记录:

31 requests ❘ 1.84MB transferred ❘ 2.0min

(onload: 2.0min, DOMContentLoaded: 2.0min)

对于45k行,可数据的加载时间增加了80%,5k行的加载时间几乎超过了40%。

所以,我想知道你们是否知道有类似的插件可以更快地处理很多行( 45000+ ),还是我只是试图在“一举”中加载所有的45000+记录而忽略了这个问题?

如有任何建议,敬请谅解!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-25 09:32:48

来自DataTables常见问题( http://datatables.net/faqs#speed ):

  • 客户端处理- DOM来源的数据:大约5‘000行。速度选项: bSortClasses
  • 客户端处理- Ajax来源的数据:大约50‘000行。速度选项: bDeferRender
  • 服务器端处理:数百万行。

如果您目前没有使用延迟呈现,您的45'000行,我肯定会建议。如果失败,对于DataTables选项,您可能需要查看服务器端处理。

票数 28
EN

Stack Overflow用户

发布于 2014-01-05 18:03:56

Allan的回答是好的;但是还有一件事(它对加载时间有很大的影响)是将bProcessing和bServerSide设置为true,如下代码所示:

代码语言:javascript
复制
$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": "../examples_support/server_processing.php"
    } );
} );

参考side.html

我的代码加载时间是15秒,现在大约需要1秒:)

票数 4
EN

Stack Overflow用户

发布于 2015-11-24 14:41:04

我发现浏览器插件也会降低DataTable的性能,在我的例子中就是如此。表本身的装载时间从大约15s增加到2s。

其中之一是Skype Toolbar,它会自动解析表中的数据,除非你告诉它不要这样做。

这对大桌子来说是个问题。很多用户都有这个插件,它不知不觉地减缓了他们对大表的加载速度。

有一个很好的解决方案,把这个添加到标题中。每个面向公众的DataTables网页都应该包含以下内容:

代码语言:javascript
复制
<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" />
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11646377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档