Você está na página 1de 16

Resumen de estrategias de server push.

ndice
Estrategias
Push Externo Pushlet Long polling Server-Send Event WebSockets

Comparacin de las estrategias. Librera SignalR para implementarlo.


Explicacin Funcionamiento. Demo y proyecto de ejemplo.

Preguntas.

Estrategias.
Las tecnologa push server es el estilo de comunicacin que se genera desde el servidor hacia los diferentes clientes. En tecnologas Web es un problema no trivial ya que el protocolo HTTP se basa en llamadas y respuestas desde el servidor. Se muestran algunas estrategias de solucin en la Web

Estrategias Push Externo


Estrategia que consiste en utilizar una tecnologa adicional, Flash, Java y otra aplicacin levantada en el cliente que mantiene una conexin constante abierta con el servidor para realizar los push desde el servidor.

Estrategias Pushlet
Consiste en mantener una conexin abierta para el browser engandolo y haciendolo creer que siempre est en estado cargando, por lo que en estricto rigor la carga de la pgina nunca est completa, por otro lado en caso de time-out de parte del navegador no se puede hacer nada, se necesita una accin por el navegador.

Estrategias Long polling


El cliente hace una peticin de informacin normal, el servidor entrega una respuesta vaca y solo entrega informacin cuando la puede completar, para evitar time out cada cierto tiempo se responde y se re enva la solicitud de informacin por el cliente, se diferencia del anterior a que es solo una solicitud de informacin y no la carga de la pgina completa.

Estrategias Server-Send Event


Es una implementacin en el navegador, que mantiene una solicitud http para la recepcin de informacin desde el servidor, se diferencia de long polling en que est implementado a nivel de navegador y no es necesario abrir y cerrar la conexin con cada respuesta.

Estrategias WebSocket
Es una implementacin tanto a nivel de navegador como de servidor web, es un protocolo tcp diferente y solo se basa en http para el hand-shake inicial. Permite comunicacin full duplex lo que baja la complejidad y consumo tanto del servidor como del servidor web.

Comparacin de estategias
.. Soporte de Navegadores Long-polling Server-Sent Events WebSockets RFC-6455 soportado por Soportado por la mayora de los Soportado por Chrome 9+, Chrome 16+, Firefox 11+, IE navegadores comunes. Firefox 6+, Opera 11+, Safari 5+ 10+, Safari 6+, Opera 12+ Usa poco recurso de CPU, pero crea un proceso inactivo por usuario en el servidor utilizando primordialmente memoria. La mejor solucin posible. El Trabaja como el long-polling Servidor tiene un proceso que solo que no es necesario cerrar sirve para todos los procesos. la conexin con cada respuesta Sin Loops, solo memoria y CPU que se enva. utilizado por accin del cliente. Nativamente implementado en los navegadores toma una mnima cantidad de recursos.

Carga del Servidor

Carga del cliente

Tiempo de Respuesta

Depende de la implementacin, Nativamente implementado en pero siempre hay un proceso los navegadores, toma una asincrono para obtener la cantidad mnima de recursos. respuesta. Depende del navegador, pero Casi tiempo real, solo el tiempo en generar el 3 segundos por utilizado en la conexin y defecto, pero se puede cambiar desconexin al hacer un nuevo en la configuracin del request. navegador.

Tiempo Real.

Consumo de batera en dispositivos mobiles.

Alto

Bajo

Bajo

Librera SignalR para implementarlo.


Es una tecnologa asp.net oficial con soporte Microsoft que puede ser utilizada en MVC. Permite la emulacin de comunicacin en tiempo real, dependiendo de la tecnologa. Es una capa completa de abstraccin del transporte. De cdigo libre disponible en NuGet y Github, bajo licencia Apache-2.

Librera SignalR para implementarlo.


Prioridad de resolucin de estrategias segn capacidades.

Librera SignalR para implementarlo.

Librera SignalR para implementarlo.


Librera de alto nivel, muy parecida a los Controladores con acciones por Hub.

Librera SignalR para implementarlo.

Preguntas?

Gracias!.

Você também pode gostar