aplicaciones en tiempo real con nodejs y html5

Post on 08-Jun-2015

5.369 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

presentación usada en el taller realizado el 22,23 y 26 de Septiembre de 2011 en las instalaciones de @telmexhub por parte de la comunidad www.programadoreshtml.mx

TRANSCRIPT

HTML5 Taller 2011

Aplicaciones Web en tiempo real

DEM

O¿Qué es una aplicación

web en tiempo real?

• http://www.lightstreamer.com/demo/StockListDemo/

Comunicación bidireccional entre el servidor y los usuarios

aa b

b

Servidor Web

1 Antecedentes

Limitaciones de la Web actual

Pull (Así funciona la Web)Servidor Web

Petición

Navegador Web

Respuesta

Push (Lo que necesitamos)Servidor WebNavegador Web

DatosEvento

Desde hace algunos años existen soluciones pero son poco eficientes…

Servidor Web

Ajax (Polling)

peticiónrespuesta

petición

respuesta

petición

respuesta

• Script de prueba para Apache 2.2 con PHP 5.3

<?phpsleep(3);echo «hola mundo»;?>

Simulamos con un script, una petición que toma3 segundos en ejecutarse.

1 37 73 1091451812172532893253613974334695055415776136496857217577938298659019379730.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

10.0

Tiempo (s)

Los servidores web tienen un número limitado de procesos…

Comportamiento de Apache 2.2 con 1000 peticiones, 100 de ellas concurrentes

Peticiones

2 Servidores tipo Comet

Misma infraestructura, diferente filosofía

Con los servidores tipo Comet nos acercamos mucho más a la solución ideal…

Servidor tipo Comet

Long pollingpetición

respuesta

petición

respuesta

petición

Algunos servidores Comet / Websockets…

Python Java .Net Ruby Javascript

TornadoTwisted…

CometdProtcoloBayeux

GlassFishActiveMQ…

WebSync Protocolo Bayeux

Thin/Faye protocolo Bayeux

Node.js*Es posible ejecutarlo en Windows Azure

Open Source Open Source Comercial Open Source OpenCource

Acerca de Node.js

• Basado en el motor Javascript Google V8

• Todas las operaciones son asíncronas

• Uno de los servidores más rápidos del mercado

• Altamente eficiente• Ideal para la creación de

aplicaciones en tiempo real

En Node.js todas las operaciones son asíncronas. No usa procesos…

Comportamiento de Node.js con 1000 peticiones, 100 de ellas concurrentes

1 41 81 1211612012412813213614014414815215616016416817217618018418819219610.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

10.0

ApacheNode

Tiempo (s)

Peticiones

Tiempo (s)

3 WebSockets con HTML5

El futuro

Con el API de WebSockets se crea un canal bidirecional…

Servidor con soporte paraWebSockets

respuesta

respuesta

inicio

4 Ejemplos taller con Node.js y Socket.io

El futuro

@tiempor3al

Comunidad HTML5@programashtml

Gracias

top related