Bootstrap表在大量记录上花费很长的加载时间

时间:2017-08-10 07:08:22

标签: php jquery mysql ajax performance

我正在使用Bootstrap表来显示来自Mysql Database的表格格式的记录。

由于记录超过6000,加载所有数据需要很长时间。它使我的应用程序非常慢。我们点击页码时可以加载数据吗?所以最初它应该只需要20个记录而不是单页数字点击它应该接下来的20个记录。那样的东西?

4 个答案:

答案 0 :(得分:1)

是的,当你有很多记录时,最好一次只显示它的块。这将大大减少页面加载所需的时间。

您可以在MySql查询中使用LIMIT {start}, {amount}来选择块。

答案 1 :(得分:1)

有两种可能的解决方案:

  1. 使用分页
  2. 使用Ajax加载数据(按部分100条记录加载)

答案 2 :(得分:1)

自页面加载期间加载数据以来,客户端分页将产生相同的影响。如果您担心初始加载时间,那么服务器端分页data-side-pagination="server"就是您想要的,因为(显然)它减少了服务器的工作量,因为它根据页面限制将请求除以块。它记录在他们的网站here

<table id="table"
           data-toggle="table"
           data-url="/examples/bootstrap_table/data"
           data-height="400"
           data-side-pagination="server"
           data-pagination="true"
           data-page-list="[5, 10, 20, 50, 100, 200]"
           data-search="true">
        <thead>
        <tr>
            <th data-field="state" data-checkbox="true"></th>
            <th data-field="id">ID</th>
            <th data-field="name">Item Name</th>
            <th data-field="price">Item Price</th>
        </tr>
        </thead></table>

答案 3 :(得分:0)

OFFSET分页有性能问题。相反,“记住你离开的地方”。有关该技术的讨论,请参阅http://mysql.rjweb.org/doc.php/pagination