Wie skaliert die Wartezeit für SmartClient auf Tausende von Benutzern, die Grids bearbeiten?Ist Smartclient geeignet?
Ich habe Warnungen davor erhalten, dass ExtJS nicht geeignet wäre.
Wie skaliert die Wartezeit für SmartClient auf Tausende von Benutzern, die Grids bearbeiten?Ist Smartclient geeignet?
Ich habe Warnungen davor erhalten, dass ExtJS nicht geeignet wäre.
Die Anzahl der Benutzer, die Grids bearbeiten, ist nicht wirklich relevant - das ist eher eine Frage der Auslastung Ihrer Anwendung. Wenn Sie nach der Leistung in Bezug auf die Grid-Komponente selbst fragen, beziehen sich die relevantesten Fragen auf die Fähigkeiten des Grids und darauf, wie viele Daten er verarbeiten kann und nicht, wie viele Benutzer ihn im Laufe der Zeit verwenden werden.
Ich bin nicht vertraut mit SmartClient, aber im Fall von Ext, das Gitter sehr gut für kleine bis mittelgroße Rasterdaten (sehr ungefähr, bis zu ~ 50 Zeilen pro Seite, bis zu ~ 10 Spalten von Daten). Offensichtlich hängt das alles von vielen Variablen ab, aber es stimmt, dass die Gitterrenderingzeit von Ext direkt proportional zur Menge der gleichzeitig gerenderten Daten steigt. Dies liegt daran, dass ein recht schweres DOM unter den Deckeln verwendet wird, wobei der Kompromiss rich feature set standardmäßig und die Flexibilität, die zum Erstellen von angepassten verschachtelten Zeilenlayouts bereitgestellt wird, erforderlich ist. Es unterstützt Paging, um Leistungsprobleme zu verringern, und es gibt auch eine sehr populäre extension, die bedarfsgesteuertes Laden von Zeilen (virtuelles Scrollen) bietet, das Laden von großen Datenmengen mit höherer Leistung ermöglicht. Es gibt auch eine example einer leichteren und einfacheren Version des gepufferten Ladens in den Ext-Beispielen, die eine ausgezeichnete Leistung mit vielen Daten zeigt.
Je nach Ihren Anforderungen gibt es auch eine neue leichte ListView Komponente in 3.0. Es unterstützt nicht alle Funktionen von GridView, aber wenn Sie in erster Linie ein reines Raster benötigen, ist dies eine gute Alternative.
All dies ist nicht zu sagen, dass SmartClient nicht gut ist - ich habe keine Ahnung. Ich möchte nur, dass jeder, der diesen Thread betrachtet, eine informierte Entscheidung auf der Ext-Seite der Gleichung hat, da es sich anhört, als ob Sie einseitige Meinungen dazu erhalten hätten.
Vielen Dank für Ihre Antwort. Ich hatte den Eindruck, dass der durchschnittliche Joe, der eine Website mit Ext betritt, von einer langen Ladezeit abgeraten würde, die sich auch erhöhte, wenn viele Leute die Seite nutzten. Das war der Grund, warum ich dachte, SmartClient wäre besser, aber ich habe keinen Vergleich zwischen ihnen gefunden. Vielleicht war ich zu schnell, ExtJS zu ignorieren.
Ich hoffe, dass ich mit jemandem Kontakt aufnehmen kann, der Erfahrung mit SmartClient hat, um meine zukünftige Website zu entwickeln. Danke Jez
Smart Client eine einzelne Gitterkomponente aufweist, die sowohl horizontal als auch vertikal zum inkrementellen Rendern der Fall ist, so dass es behandelt eine sehr sehr große Anzahl von beiden Reihen (mehrere Millionen) und Spalten (mehrere Hundert) ohne Verschlechterung der Leistung.
Alle Rasterfunktionen, die von SmartClient unterstützt werden - Inline-Bearbeitung, Gruppierung, Filterung, dynamische eingefrorene Spalten, Sortierung, Neuanordnen von Feldern, Drag & Drop .. (zu lange Liste) werden von diesem einzelnen Raster mit hohem Datenvolumen unterstützt Komponente.
Eine Anzahl von Benutzern hat mit der Ext Grid-Komponente in Skalierbarkeitsprobleme lief und diskutierte es hier auf den Smart Client-Foren:
http://forums.smartclient.com/showthread.php?t=2678
Soweit Skalierbarkeit des Servers, die Grid-Komponente trägt in Wirklichkeit enorm zur serverseitigen Skalierbarkeit.Betrachten wir die adaptive Filtermechanismus des Smart Client grid:
http://www.smartclient.com/index.jsp#adaptiveFilter
dieser Funktion und die damit verbundene „Adaptive Sort“ -Funktion auf 60-90% der teuersten Arten von Server-Zugriffe reduzieren (das heißt, diejenigen, die Zugriff und Filterung/Sortierung eines großen Datensatzes).
SmartClient nutzt diesen Ansatz der intelligenten Wiederverwendung von Daten, um teure serverseitige Operationen zu vermeiden. Eine gute Übersicht finden Sie in der Dokumentation zur Klasse ResultSet; die ResultSet wird als Cache-Management-Objekt von allen Komponenten verwendet, die mit Datensätzen in Smart Client arbeiten:
http://www.smartclient.com/docs/9.0/a/b/c/go.html#class..ResultSet
wie ist dies eine echte Frage? –
Sie müssen klären, was die Anwendung ist? Auch Smartclient ist eine sehr weit gefasste Definition? ExtJS ist nur eine Option –
Ich bin verwirrt. Wird er uns einen Scheck über mehr als den Preis des Artikels schicken? – User1