jquery dataTable卡在服务器端

时间:2013-11-28 10:57:01

标签: jquery datatable

我正在开发一个数据存档系统,它正在播放数百万/数十亿的数据。我已经使用php-jquery数据表服务器端处理创建了客户日志,该数据表日益增加(每行超过10列)。 目前它有500万行。现在日志变得非常慢(几乎无法使用 - 只是显示处理 ....)。

注意:日志是从几个表中动态创建的

有没有其他方法可以处理这种应用程序?

我的日志代码如下:

$(document).ready(function() {
    var oTable = $('#example').dataTable( {
        "bFilter": true,
        "bSearchable": true,
        "bProcessing": true,
        "bServerSide": true,
        "sPaginationType": "full_numbers",
        "aoColumnDefs" : [ { 'bSortable' : false, 'aTargets' :  [6,7]} ], // unclickable or unsortable column in the header
        "sDom": 'T<"clear">lfrtip',
        "oTableTools": { 
            "aButtons": [ "copy", "csv", "xls", {
            "sExtends": "pdf",
            "sPdfMessage": "Full Logbook of Customer:  <?php echo "$customerName"; ?>  "
         }],
        //"aButtons": [ "select_all", "select_none" ],
        "sSwfPath": "js/swf/copy_csv_xls_pdf.swf"
        },
        "sAjaxSource": "server-processing/logbook.php?customer=<?php echo $customer; ?>",
        "fnServerData": function( sUrl, aoData, fnCallback ){
            $.ajax( {
                "url": sUrl,
                "data": aoData,
                "success": fnCallback,
                "dataType": "json",
                "cache": false
            });
        }   
    });

    oTable.columnFilter({ sPlaceHolder: "head:after",
        aoColumns: [ 
            { type: "text" },
            { type: "text" },
            { type: "text" },
            { type: "text" },
            { type: "text" }
        ]
    });

    var asInitVals = new Array();
    var oTable = $('table.display').dataTable();                    

});

1 个答案:

答案 0 :(得分:1)

您是否考虑过在服务器端实施分页?

检查此链接: http://datatables.net/release-datatables/examples/data_sources/server_side.html