Comet VS Ajax-Abfrage

8

Ich muss einen Chat wie Facebook Chat erstellen.

Mit Comet brauche ich mehr Speicher, um die Verbindung zu halten.

Beim Ajax-Polling gibt es ein Latenzproblem, wenn ich alle 3-4 Sekunden eine Anfrage sende.

Also ... Wenn die Latenz (3-4 Sekunden) keine Rolle spielt, ist Ajax Polling besser für meinen Fall?

    
xRobot 04.06.2010, 14:58
quelle

3 Antworten

6

Latenz ist nicht das einzige Problem. COMET (Long-Polling) "speichert" Ihren Datenverkehr - wenn Sie Polling verwenden, können Sie nicht wissen, ob es Änderungen auf dem Server gab, so dass einige der Anrufe nur eine Verschwendung von Verkehr und Ressourcen sind (z. B. auch wenn niemand Chatten, du machst alle 3-4 Sekunden telefonieren. Im Falle von COMET benötigen Sie in der Regel nur einen Aufruf, um ein Update vom Server zu erhalten (mit einer Trefferquote von 100%).

    
Vasil Remeniuk 07.06.2010 12:29
quelle
2

@Vasil: "Sie können Millionen geöffneter Verbindungen behalten"

Werfen Sie einen Blick darauf Problem

Und in Bezug auf die falsche Überlegenheit von NIO gegenüber IO.

Der iobound-Artikel zeigt nur, dass IO NIO übertrifft und ja IO vor NIO aus dem Speicher geht (übrigens hat der Autor nicht versucht, den Stack-Speicher mit einem niedrigeren Wert zu reduzieren).

    
jmarranz 17.01.2011 14:52
quelle
1

Wenn Latenz kein Problem ist, dann ist AJAX wahrscheinlich besser. Comet kann Probleme haben, mehrere Verbindungen zwischen demselben Client / Server-Paar aufrechtzuerhalten, wenn Sie nicht sehr, sehr vorsichtig sind. (Ref)

    
Quotidian 04.06.2010 15:06
quelle

Tags und Links