¿Qué es Node.js?

Esperando a que Jaime se anime y prepare el Un poco de Node.js me ha parecido conveniente como poco tener un primer post sobre esta tecnología con tantos fans (y algunos detractores también, que eso de programar en Javascript!!!):

Node es una plataforma que permite desarrollar sobre Javascript para la capa servidor a través del motor Javascript Google’s V8.

Una vez instalado (http://nodejs.org/download/) lanzamos la consola con >node

Node también puede ejecutar cualquier fichero con extensión .js:

Un Servidor en node:

Node incluye un sistema de módulos que permite:

· Importar un fichero .js:

· O bien buscar entre los módulos core y en la carpeta de la instalación node_modules:

En Internet podéis encontrar un buen número de tutoriales, desde los más simples a avanzados, quizás la primera referencia sería el Mastering Node: http://visionmedia.github.io/masteringnode/book.html o en formato videocast por el propio creador:

Humor:Compartiendo el tiempo entre varios proyectos

Publicado en Humor. Leave a Comment »

REST vs WebSockets: comparando rendimiento y otras consideraciones

A través de he llegado a esta comparativa entre REST y WebSockets en cuanto a rendimiento que me ha recordado porque no todo debe resolverse con interfaces REST!!!

En el post primero definen las características de WebSockets:

· Bidireccional: tanto el cliente como el Servidor pueden iniciar las conexiones

· Full-duplex

· Conexión TCP única: con REST es necesaria una nueva conexión TCP por cada petición, mientras que en WebSockets el cliente y el servidor comunican sobre la misma petición

· Protocolo ligero: frente a una conexión HTTP en WebSockets una vez hecho el handshake los datos se minimizan

Teniendo en cuenta las diferencias entre ambas comunicaciones no resulta extraño que los WebSockets necesiten mucho menos tiempo para enviar el mismo número de mensajes:

Más interesante aún es que con REST el overhead crece cuando crece el número de mensajes ya que implica que muchas conexiones TCP deben crearse y finalizarse y que se envíen un gran número de cabeceras HTTP.

Una vez vista la diferencia de rendimiento el artículo incluye algunas consideraciones a tener en cuenta en el uso de WebSockets:

· WebSockets es un protocolo de más bajo nivel

· WebSockets es un protocolo con estado

· Con WebSockets se deben tener en cuenta los proxies, firewalls,…

· La seguridad no está definida en los WebSockets

Y una vez conocido esto, ¿se os ocurre algún escenario en el que usar WebSockets en lugar de REST? 🙂

A %d blogueros les gusta esto: