socketio-clicko-informatica-programacion

El intercambio de información es una de las piedras angulares en las aplicaciones web de hoy en día, es por eso que en éste artículo hablaremos de Socket.io, una librería JavaScript para comunicación web bidireccional en tiempo real basada en eventos.

El protocolo HTTP fue creado desde sus orígenes para ofrecer comunicaciones en un sólo sentido, desde el servidor hacia el cliente. Sin embargo las aplicaciones web de hoy en día exigen más que eso para poder ofrecer una experiencia de usuario más completa: necesitan un flujo de información en ambos sentidos en el mismo instante en el que ocurren los eventos.

Para cubrir esa necesidad han aparecido varias estrategias, entre ellas long polling y Websocket. En long polling el cliente se mantiene haciendo preguntas al servidor de manera continua sobre un determinado evento, mientras que con Websocket tenemos a nuestra disposición un nuevo protocolo que permite la interacción entre el cliente y el servidor de manera persistente, facilitando la transmisión de datos en tiempo real en ambas direcciones justo cuando suceden los eventos en los que interviene el usuario. Es aquí donde aparece Socket.io.

¿Qué es Socket.io?

Socket.io es una librería open source de JavaScript basada en el protocolo Websocket para Node.js que permite una comunicación TCP bidireccional en tiempo real entre clientes y servidor. Para ello se basa principalmente en Websocket pero también puede usar otras alternativas como sockets de Adobe Flash, JSONP polling o long polling en AJAX, seleccionando la mejor alternativa para el cliente justo en tiempo de ejecución.

Si estás pensando en desarrollar una aplicación o servicio web dónde interactúan varios elementos remotos y necesitas conectarlos entre ellos en tiempo real y de una manera sencilla, intuitiva y sin necesidad de grandes conocimientos de node.js, socket.io es la librería perfecta.

Para información más detallada puedes ver la documentación oficial y también puedes echar un vistazo al código fuente en Github.

Fuentes:

documentación oficial → https://socket.io/docs/

Github → https://github.com/socketio/socket.io

Facebook
Facebook
LinkedIn
Full stack engineer - Analista programador Web

Full Stack Engineer – Analista Programador Web