2009-05-21 8 views
6

Me he estado preguntando si hay una ventaja real al usar COMET/push-technologies sobre el sondeo mucho más simple con solicitudes largas donde el servidor esperará un cierto tiempo máximo para que sucedan nuevos eventos antes de decirle a los clientes que no pasó nada.¿Ventajas de COMET en largas encuestas de solicitud?

Ambas tecnologías tienen latencias de cliente similares y aunque la sabiduría común es que las solicitudes largas son peores porque necesitan establecer una nueva conexión, también existe el hecho de que hay HTTP keep-alive, por lo que al final ambos parecen producir una cantidad de tráfico/carga muy similar.

Entonces, ¿hay alguna ventaja clara al usar COMET?

+0

No estoy tan lejos como puedo ver ... (/ me pregunto si existe algo así como un fanático del cometa) – annakata

+0

@annakata ¿Las personas aún/yo en estos días? – Pacerier

Respuesta

12

encuesta de AFAIK con peticiones largas casi IS cometa. El sondeo con solicitudes cortas no lo es.

+4

Bingo. La diferencia es mantener abiertas las solicitudes durante un largo período de tiempo, lo que es complicado de hacer de manera eficiente en el servidor. Si tienes eso, esencialmente tienes cometa. – jvenema

0

Algunas de las ventajas que se me ocurren:

  • cliente hace que la programación sea más fácil.
  • Latencia mínima entre el evento real y la notificación que llega al cliente. Con las encuestas, esto tiene un tiempo medio de [TIEMPO DE ENCUENTRO]/2 y el peor caso de [TIEMPO DE ENCUESTA].
  • Puede minimizar los recursos necesarios en el servidor. Vea esto article por ejemplo. Se necesitan nuevas tecnologías de servidor para que esto suceda.
+1

La latencia que describe es lo que tiene con "solicitudes cortas" con solicitudes largas, el servidor demora la respuesta hasta que se produce un evento o se alcanza un tiempo máximo de espera (para evitar tiempos de espera de conexión). Esto significa que tiene que hacer una solicitud por minuto más o menos, pero casi no tiene latencia ya que el evento en el servidor desencadena la siguiente respuesta. El cliente no es tan complicado ... el cliente solicita un único URI de evento y vuelve a solicitarlo tan pronto como recibe una respuesta. – fforw