#LIVE


Una vista a la computacion en tiempo real.


Luis Toscano
Senior Web Developer

Historia

La practica de la computación en tiempo real no es nada nuevo, desde hace mucho tiempo se ha venido trabajando en formas de hacer este tipo de acciones utilizando herramientas simples para hacerlo, algunas como el uso de sockets o protocolos especiales para el envío de información eran la forma mas practica, con la aparición de AJAX en la web se quiso llegar a crear lo mismo solo que se sacrificaba un poco el performance mediante técnicas como el AJAX Polling, luego mejoramos un poco mas y creamos técnicas como el AJAX PUSH que mediante servicios específicos nos permitía enviar información a un sitio web, y finalmente html5 nos trajo el mejor regalo lo que hoy por hoy conocemos como los websockets.

Algunas tecnologias


Hablemos un poco de las tecnologias


  • Jabber ( XMPP)
  • AJAX Polling
  • AJAX Push
  • WebSockets
  • Sockets
  • MediaStream 

Jabber

Jabber como tal no es un protocolo es mas bien un software  el cual usa un  protocolo conocido como XMPP y tambien encontramos su variante FunXMPP que es el protocolo del conocido WhatsApp.

Este permite crear un cruze de datos mediante un servidor princial. de los mas conocidos encontramos Openfire y eJabber.

AJAX POLLING

Esta tecnica que utiliza propiedades de recarga dinamica mas peticiones xhr desde javascript todavia muy utilizada lo que realiza es una simulacion de tiempo real.

Lo malo de esta tecnica es que sacrifica un poco el performance del sitio ademas de generar un alto trafico entre datos que se encuentran en el mismo host. 

ajax push

Esta tecnica permite generar un envio dinamico desde el lado del servidor utilizando software especializado que reciben como nombre HTTP Push Server, estos utilizan una comunicacion basada en Publicador/Suscriptor para realizar la operacion del envio de la informacion, en la actualida existen gran variedad de herramientas pero una de las conocidas es APE Push Server.


Websockets

Cuando lanzaron HTML5 nos dieron muchas sorpresas y una de ellas fue la implementacion de Sockets y estos recibirian el nombre de WebSockets los cuales podian ser consumidos mediante Javascript, el exito que ha tenido ha sido impresionante pues el dinamismo aumento y el performance no decayo y fue traslado al lado del servidor, podemos hacer apps en diferentes lenguajes pero el preferido es node.js y su framework sail.js

Sockets

El padre de todas las tecnologias mencionadas permite crear conexiones punto a punto mediante un puerto y un permiso,  estos pueden ser consumidos desde casi cualquier lenguaje de programacion, llamese Java, C++, earlang, Scala, PHP, Rubi,Lua, Lisp, Hashkell, entre otros.

Para esto basta con conocer un poco sobre las terminologias de los Sockets ya que estos son la raiz de la Computacion en Tiempo Real.

Media streams

Los media streams nombre que le he dado yo a aquellos protocolos que permiten enviar imagenes, voz y datos entre servicios,  estos permite generar una forma alternativa de cruze de informacion.

Algunas herramientas para  utilizar esto son pagas, pero otras son de libre acceso como Red5 un servidor de Medios que funciona con el protocolo RTSP ( Real Time Streaming Protocol )

Que debo saber para Aprender Realtime


Si deseas crear una aplicacion que utilice realtime lo unico que necesitas es ganas de aprender porque ya contamos con numerosas formas de hacerlo algunas anteriormente  mencionadas, pero si quieres saber mas desde 0 te recomiendo que aprendas sobre Node.js y Socket.io entre estos dos te daran muchos ratos felices.

Y Donde encuentro recursos.



Gracias por su Atencion


Puedes seguirme en  y encontrar esta presentacion en :

@codigolandia - @caribecoders

www.luistoscano.com - luis.caribecoders.com

#LIVE

By Luis Toscano Castilla

#LIVE

  • 973