2015-09-01 25 views
9

JQuery veri tabanını, 50 sütunla birlikte 3000 ila 4000 satırlık veri için uyguladık. Ancak, sütun seviyesi arama, global arama, bayi, sayfalandırma vb. Gibi farklı fonksiyonellikler uygulandıkça performansı düşürür.jQuery Datatable ve jQGrid arasındaki performans karşılaştırması?

jQuery v1.7.2 ve jQuery dataTable 1.10.7 js kullanıyoruz. JQuery veritabanın veya jQuery veritabanın diğer alternatiflerinin performansını, bu kadar büyük bir veriyi görüntülemek için nasıl geliştirebilirsiniz?

Arkadaşımdan biri jQGrid'i kullanmayı önerdi.

jQuery datatable ve jQGrid arasındaki performans karşılaştırması nedir? Hangisi daha iyi? veya performansı artırmak için herhangi bir alternatif?

+1

3000 veya 4000 satır gerçekten büyük bir ızgara değildir (en azından jqGrid için). jqGrid birçok senaryoyu destekler, örneğin sunucu tarafı sayfalama, verilerin ve istemci tarafının sıralanması ve filtrelenmesi (eğer 'loadonce: true' seçeneği kullanılırsa). Hatta 4000 satırlı 'loadonce: true' seçeneği de kullanılabilir. Aynı anda kaç satır görüntüleniyorsunuz? 50 sütun kullanımı garip geliyor. Çok sayıda sütunun 4000 satır olarak daha fazla performans sorunu oluşturduğundan şüpheleniyorum. Verileri nasıl görüntülüyorsunuz? Çok gizli sütununuz var mı? Daha fazla detay, resimler gerekli olacaktır. – Oleg

+0

Değerli rehberliğiniz için teşekkürler Oleg. Gösterilecek 50 sütunumuz var ve sütun gizlenmiyor. Ancak, kullanıcılara jQuery DataTable eklentisinin sağladığı sütunu gizleme ve gösterme olanağı sunduk. Kullanıcıların DataTable'da görüntüleyebilecek kayıt sayısını seçmelerini kolaylaştırdıkça 4000 satırın tümünü bir kez göstermemiz gerekiyor ve Kullanıcılar tüm kayıtları tek seferde gösterecek seçeneği belirleyebilir. Yukarıda belirtilen senaryo için jQGrid'i kullanabilir miyiz? Lütfen öneriniz. JQGrid belirtilen senaryo için daha iyi performans gösteriyor mu? – Priyanka

+0

Ben dataTable bilmiyorum. Bu yüzden performansa gerçekten * katılamıyorum * ama verileri görüntüleyen jqGrid oluşturmanıza yardımcı olabilirim. Verileri nasıl görüntülemeniz gerektiğini ve ızgarada neyin görüntüleneceğini (metinler, sayılar, tarihler, onay kutuları, simgeler, bağlantılar, ...) hala anlamıyorum. Izgara yatay veya dikey kaydırma çubuğu var mı? Hangi sayfa boyutuna sahipsiniz? DataTable ile oluşturulan ızgaranın nasıl göründüğünü gösteren resmi ekleyecekseniz pratik olur. Şebekede şimdi yavaş olan şey (ilk veri yükleme, sıralama, filtreleme, ...)?Hangi web tarayıcısını kullanıyorsunuz (eski IE)? – Oleg

cevap

4

Şu an üretimde jgGrid kullanıyorum. datatables ve jqGrid'un seçilmesi arasında da bir seçenek vardı. İkisini de test ettim. Datatables performansı, kayıt boyutunun artmasıyla bozulur.

jqgrid kullanmak için, loadonce: true, @Oleg değerinde, 10.000'e kadar kayıtta yorumda belirtildiği gibi bir sorun yaratmamalıdır.

2 milyondan fazla kayıt için üretimde jqGrid ürününü test ettim ve gayet iyi çalışıyor. sunucu tarafı sayfalama burada uygulandı ve geri dönüş veri türü olarak json kullanıldı.

I (Bu global arama uygular) filter toolbar gibi ekstra özellikleri ton uygulamış, Inline Editing, Sunucu tarafı hem de istemci tarafı sayfalama, ve diğer özellikleri jqGrid destekler ton.

Ayrıca, jqGrid işlevlerini genişletmek ve özel işlevlerinizi gereksinimlerinize göre eklemek gerçekten çok kolay.

Ek bir bonus olarak, jqgrid için StackOverflow üzerinde zaten sorulan sorular (veya kendinize sorun) ile çok sayıda yardım alabilirsiniz.

+0

Değerli yanıtınız için teşekkür ederiz. – Priyanka

+0

Bir deneyin ve jqGrids ile deneyimlerimi bildireceğim – Legends