Verarbeitung auf der anderen Seite vs. Verarbeitung auf der Clientseite + Ajax?

suche nach allgemeinen Ratschlägen und / oder Gedanken ...

Ich erstelle etwas, von dem ich denke, dass es eher eine Webanwendung als eine Webseite ist, weil ich beabsichtige, dass es wie eine Google Mail-App aussieht, bei der Sie die Seite den ganzen Tag offen lassen, während Aktualisierungen auf die Seite "gepusht" werden (für die Ich bin daran interessiert, die Kometenprogrammiertechnik zu verwenden. Ich habe noch nie eine Webseite erstellt, die so reich an Ajax und Javascript war (ich bin jetzt ein großer Fan von JQuery). Aus diesem Grund stelle ich mich immer wieder der gleichen Frage, wenn ich eine neue Funktion implementiere, die eine dynamische Änderung in der Benutzeroberfläche erfordert, über die der Server Bescheid wissen muss:

1) sollte ich die gesamte Verarbeitung auf dem Client in Javascript ausführen und so wenig wie möglich über Ajax zurückschicken oder 2) sollte ich eine Anfrage über Ajax an den Server senden, den Server die gesamte Verarbeitung ausführen lassen und dann das neue HTML zurückschicken . dann mache ich auf der Ajax-Antwort eine einfache Zuordnung mit dem neuen HTML

Ich war geneigt, immer # 1 zu folgen. Diese Web-App, die ich mir vorstelle, kann mit all den Ajax-Anfragen ziemlich gesprächig werden. Mein Gedanke ist es, die Größe der Anfragen und Antworten so gering wie möglich zu halten und sich auf die sich ständig verbessernden Javascript-Engines zu verlassen, um so viel wie möglich von der Verarbeitung und den Benutzeroberflächenaktualisierungen zu machen. ich habe mit jquery herausgefunden, dass ich auf der Client-Seite so viel kann, dass ich es vorher nicht so einfach hätte tun können. Mein Javascript-Code ist tatsächlich viel größer und komplexer als mein serverseitiger Code. Es gibt auch einfache Berechnungen, die ich durchführen muss, und ich habe das auch auf der Client-Seite gepusht.

Ich denke, die Hauptfrage, die ich habe, ist, sollten wir IMMER nach Möglichkeit nach clientseitiger Verarbeitung streben, anstatt nach serverseitiger Verarbeitung? Ich hatte immer das Gefühl, je weniger der Server verarbeiten muss, desto besser ist die Skalierbarkeit / Leistung. Lassen Sie die Leistung des Client-Prozessors die ganze harte Arbeit erledigen (wenn möglich).

Gedanken?

Antworten auf die Frage(9)

Ihre Antwort auf die Frage