PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ajax vs. Websockets


Nagelbrett
2011-08-04, 17:58:35
Hallo,
ich möchte gern eine Website bauen, die kontinuierlich in einem recht kleinen Intervall (0.1 Sekunden) Key/Value-Paare vom Server empfängt und diese in einem Diagramm darstellt.
Das Diagramm würde ich wohl mit canvas selbst zeichnen (oder kennt zufällig jemand eine freie Lib, die das bereits kann?), aber am meisten frage ich mich, wie ich die Datenübertragung realisiere.
Meine Erfahrungen auf dem Gebiet AJAX sind eher sehr limitiert, deswegen die Frage: geht das, dass man dort einen nicht-abreißenden Stream von Daten an den Client übertragen lässt ohne großartig Verzögerungen drin zu haben oder muss man dann hin und wieder neue Requests stellen und hoffen dass der Server da nicht allzu lang verzögert? Ich hätte es gern so, dass die Daten möglichst in Echtzeit auf dem Bildschirm des Users dargestellt werden.

WebSockets klingt da natürlich interessant, ist aber derzeit in Firefox und Opera standardmäßig aus Sicherheitsgründen noch deaktiviert. Gibt es da schon Aussichten, ob sich das mal ändern wird, oder ist das ganze Konzept zum Scheitern verurteilt?
Auch scheint es ja eine Vielzahl von verschiedenen WebSockets-Servern zu geben, was ist da besonders empfehlenswert?

Marscel
2011-08-04, 19:08:15
Das Diagramm würde ich wohl mit canvas selbst zeichnen (oder kennt zufällig jemand eine freie Lib, die das bereits kann?), aber am meisten frage ich mich, wie ich die Datenübertragung realisiere.

Du könntest dir mal raphael.js (http://raphaeljs.com/) angucken. Das ist zwar SVG, aber lässt sich unaufwendig nutzen und kümmert sich um den Browserspezifischen Kram.

geht das, dass man dort einen nicht-abreißenden Stream von Daten an den Client übertragen lässt ohne großartig Verzögerungen drin zu haben oder muss man dann hin und wieder neue Requests stellen und hoffen dass der Server da nicht allzu lang verzögert? Ich hätte es gern so, dass die Daten möglichst in Echtzeit auf dem Bildschirm des Users dargestellt werden.

AJAX hat etwas mehr Overhead als WSs, der Rest hängt halt von Serverauslastung und Netzwerk hab. Das Konzept ist auch etwas anders, aber unterm Strich kannst du deine Daten auch mit AJAX, einfach z.B. mit jQuery, abfragen.

Auch scheint es ja eine Vielzahl von verschiedenen WebSockets-Servern zu geben, was ist da besonders empfehlenswert?

Selber noch nicht ausprobiert, aber node.js ist derzeit sehr gehypt.