2015-09-01 15 views
9

Chúng tôi đã triển khai dữ liệu jQuery cho 3000 đến 4000 hàng dữ liệu cùng với 50 cột. Nhưng nó làm giảm hiệu suất khi chúng tôi triển khai các chức năng khác nhau của dữ liệu như tìm kiếm cấp cột, tìm kiếm toàn cục, thu thập dữ liệu, phân trang, v.v ...So sánh hiệu suất giữa jQuery Datatable và jQGrid?

Chúng tôi đang sử dụng jQuery v1.7.2 và jQuery dataTable 1.10.7 js. Làm thế nào để cải thiện hiệu suất của jQuery datatable hoặc bất kỳ lựa chọn thay thế khác để jQuery datatable để hiển thị một dữ liệu lớn như vậy?

Một trong những người bạn của tôi đã đề xuất sử dụng jQGrid.

So sánh hiệu suất giữa jQuery datatable và jQGrid là gì? Cái nào tốt hơn? hoặc bất kỳ phương án nào khác để cải thiện hiệu suất?

+1

3000 hoặc 4000 hàng không thực sự là lưới lớn (ít nhất là đối với jqGrid). jqGrid hỗ trợ nhiều tình huống, ví dụ như phân trang bên máy chủ, sắp xếp và lọc dữ liệu và phía máy khách (nếu sử dụng tùy chọn 'loadonce: true'). Người ta thậm chí có thể sử dụng tùy chọn 'loadonce: true' với 4000 hàng. Có bao nhiêu hàng bạn hiển thị cùng một lúc? Việc sử dụng 50 cột âm thanh lạ. Tôi nghi ngờ rằng số lượng lớn các cột tạo ra nhiều vấn đề hiệu suất hơn là 4000 hàng. Cách bạn hiển thị dữ liệu? Bạn có nhiều cột bị ẩn không? Một số chi tiết hơn, hình ảnh sẽ được yêu cầu. – Oleg

+0

Cảm ơn Oleg đã hướng dẫn quý giá của bạn. Chúng tôi có 50 cột để hiển thị và không có cột nào bị ẩn. Nhưng chúng tôi đã đưa ra cơ sở cho người dùng để ẩn và hiển thị cột mà jQuery DataTable plugin cung cấp. Chúng tôi cần hiển thị tất cả 4000 hàng khi chúng tôi tạo điều kiện cho người dùng chọn số lượng bản ghi để hiển thị trong DataTable và Người dùng có thể chọn tùy chọn để hiển thị tất cả các bản ghi cùng một lúc. Vì vậy, đối với kịch bản được đề cập ở trên, chúng ta có thể sử dụng jQGrid không? Xin đề nghị. Là jQGrid cho thấy hiệu suất tốt hơn cho kịch bản được đề cập? – Priyanka

+0

Tôi không biết dataTable. Vì vậy, tôi không thể thực sự * compere * hiệu suất, nhưng tôi có thể giúp bạn tạo jqGrid hiển thị dữ liệu. Tôi vẫn không hiểu cách bạn cần hiển thị dữ liệu và nội dung sẽ được hiển thị bên trong lưới (văn bản, số, ngày, hộp kiểm, biểu tượng, liên kết, ...). Có thanh cuộn ngang hoặc dọc lưới không? Bạn có kích thước trang nào? Nó sẽ là thực tế nếu bạn sẽ bao gồm các hình ảnh trong đó cho thấy cách lưới tạo ra với dataTable trông giống như. Điều gì đang chậm trong lưới (tải ban đầu của dữ liệu, phân loại, lọc, ...)?Bạn sử dụng trình duyệt web nào (IE cũ)? – Oleg

Trả lời

4

Tôi đã sử dụng jgGrid trong quá trình sản xuất trong một thời gian ngắn. Tôi cũng có tùy chọn giữa chọn datatablesjqGrid. Tôi đã thử nghiệm cả hai. Hiệu suất Datatables giảm với kích thước bản ghi ngày càng tăng.

Để sử dụng jqgrid, loadonce: true không được đưa ra sự cố như @Oleg được đề cập trong các nhận xét tối đa 10.000 bản ghi.

Tôi đã thử nghiệm jqGrid trong sản xuất cho hơn 2 triệu bản ghi và hoạt động của nó tốt. Đáng chú ý là tôi đã triển khai phân trang bên máy chủ tại đây và sử dụng json làm kiểu dữ liệu trả về.

Tôi đã triển khai tấn các tính năng bổ sung như filter toolbar (Thực hiện tìm kiếm trên toàn cầu), Inline Editing, Phía máy chủ cũng như phân trang phía khách hàng và tấn các tính năng khác hỗ trợ jqGrid.

Hơn nữa, việc thực hiện các chức năng jqGrid thật sự dễ dàng và thêm các chức năng tùy chỉnh theo yêu cầu của bạn.

Là phần thưởng bổ sung, bạn có thể nhận được rất nhiều trợ giúp với các câu hỏi đã được hỏi (hoặc tự hỏi) trên StackOverflow cho jqgrid.

+0

Cảm ơn bạn đã Dipen cho câu trả lời có giá trị của bạn. – Priyanka

+0

Tôi sẽ thử và báo cáo trải nghiệm của tôi với jqGrids – Legends

Các vấn đề liên quan