¿Dónde se puede usar el nodo js?

Ejemplos de dónde debe usarse Node.js

CHARLA:

El chat es la aplicación multiusuario en tiempo real más típica. Desde IRC (en el pasado), a través de muchos protocolos abiertos y patentados que se ejecutan en puertos no estándar, hasta la capacidad de implementar todo hoy en Node.js con websockets que se ejecutan sobre el puerto estándar 80.

La aplicación de chat es realmente el ejemplo ideal para Node.js: es una aplicación liviana, de alto tráfico, con uso intensivo de datos (pero bajo procesamiento / computación) que se ejecuta en dispositivos distribuidos. También es un gran caso de uso para el aprendizaje, ya que es simple, pero cubre la mayoría de los paradigmas que usará en una aplicación típica de Node.js.

Tratemos de representar cómo funciona.

En el ejemplo más simple, tenemos una única sala de chat en nuestro sitio web donde las personas vienen y pueden intercambiar mensajes de una a muchas (en realidad, todas). Por ejemplo, supongamos que tenemos tres personas en el sitio web todas conectadas a nuestro tablero de mensajes.

En el lado del servidor, tenemos una aplicación Express.js simple que implementa dos cosas: 1) un controlador de solicitud GET ‘/’ que sirve a la página web que contiene un tablero de mensajes y un botón ‘Enviar’ para inicializar la entrada de mensajes nuevos, y 2) un servidor websockets que escucha los nuevos mensajes emitidos por los clientes websocket.

En el lado del cliente, tenemos una página HTML con un par de controladores configurados, uno para el evento de clic en el botón ‘Enviar’, que recoge el mensaje de entrada y lo envía al websocket, y otro que escucha los nuevos mensajes entrantes. en el cliente websockets (es decir, mensajes enviados por otros usuarios, que el servidor ahora quiere que el cliente muestre).

Cuando uno de los clientes publica un mensaje, esto es lo que sucede:

  1. El navegador captura el botón ‘Enviar’ al hacer clic en un controlador de JavaScript, recoge el valor del campo de entrada (es decir, el texto del mensaje) y emite un mensaje websocket utilizando el cliente websocket conectado a nuestro servidor (inicializado en la inicialización de la página web).
  2. El componente del lado del servidor de la conexión websocket recibe el mensaje y lo reenvía a todos los demás clientes conectados mediante el método de difusión.
  3. Todos los clientes reciben el nuevo mensaje como un mensaje push a través de un componente websockets del lado del cliente que se ejecuta dentro de la página web. Luego recogen el contenido del mensaje y actualizan la página web en el lugar agregando el nuevo mensaje a la pizarra.

API EN LA PARTE SUPERIOR DE UNA OBJETO DB:

Aunque Node.js realmente brilla con aplicaciones en tiempo real, es bastante natural para exponer los datos de las bases de datos de objetos (por ejemplo, MongoDB). Los datos almacenados JSON permiten que Node.js funcione sin el desajuste de impedancia y la conversión de datos.

Por ejemplo, si usa Rails, convertiría de JSON a modelos binarios, luego los expondría nuevamente como JSON a través de HTTP cuando Backbone.js, Angular.js, etc., o incluso jQuery AJAX los consuman. llamadas. Con Node.js, simplemente puede exponer sus objetos JSON con una API REST para que el cliente la consuma. Además, no necesita preocuparse por la conversión entre JSON y cualquier otra cosa al leer o escribir desde su base de datos (si está usando MongoDB). En resumen, puede evitar la necesidad de conversiones múltiples utilizando un formato de serialización de datos uniforme en el cliente, el servidor y la base de datos.

ENTRADAS EN COLA:

Si recibe una gran cantidad de datos concurrentes, su base de datos puede convertirse en un cuello de botella. Como se muestra arriba, Node.js puede manejar fácilmente las conexiones concurrentes. Pero debido a que el acceso a la base de datos es una operación de bloqueo (en este caso), nos encontramos con problemas. La solución es reconocer el comportamiento del cliente antes de que los datos se escriban realmente en la base de datos.

Con ese enfoque, el sistema mantiene su capacidad de respuesta bajo una carga pesada, lo cual es particularmente útil cuando el cliente no necesita una confirmación firme de una escritura de datos exitosa. Los ejemplos típicos incluyen: el registro o la escritura de datos de seguimiento de usuarios, procesados ​​en lotes y no utilizados hasta un momento posterior; así como las operaciones que no necesitan reflejarse instantáneamente (como actualizar un recuento de ‘Me gusta’ en Facebook) donde la consistencia eventual (tan utilizada en el mundo NoSQL) es aceptable.

Los datos se ponen en cola a través de algún tipo de infraestructura de almacenamiento en caché o en cola de mensajes (por ejemplo, RabbitMQ, ZeroMQ) y se digieren mediante un proceso de escritura por lotes de base de datos independiente o servicios de procesamiento intensivo de cómputo, escritos en una plataforma de mejor rendimiento para tales tareas. Se puede implementar un comportamiento similar con otros lenguajes / marcos, pero no en el mismo hardware, con el mismo alto rendimiento mantenido.

En resumen: con Node, puede empujar las escrituras de la base de datos a un lado y tratarlas más tarde, procediendo como si hubieran tenido éxito.

Transmisión de datos:

En las plataformas web más tradicionales, las solicitudes y respuestas HTTP se tratan como eventos aislados; de hecho, en realidad son transmisiones. Esta observación se puede utilizar en Node.js para construir algunas funciones interesantes. Por ejemplo, es posible procesar archivos mientras todavía se están cargando, ya que los datos ingresan a través de una secuencia y podemos procesarlos en línea. Esto podría hacerse para la codificación de audio o video en tiempo real, y la representación entre diferentes fuentes de datos.

APODERADO:

Node.js se emplea fácilmente como un proxy del lado del servidor donde puede manejar una gran cantidad de conexiones simultáneas sin bloqueo. Es especialmente útil para enviar diferentes servicios con diferentes tiempos de respuesta o para recopilar datos de múltiples puntos de origen.

Un ejemplo: considere una aplicación del lado del servidor que se comunica con recursos de terceros, extrae datos de diferentes fuentes o almacena activos como imágenes y videos en servicios en la nube de terceros.

Aunque existen servidores proxy dedicados, usar Node en su lugar podría ser útil si su infraestructura de proxy no existe o si necesita una solución para el desarrollo local. Con esto, quiero decir que podría crear una aplicación del lado del cliente con un servidor de desarrollo Node.js para activos y solicitudes API de proxy / stubbing, mientras que en producción manejaría tales interacciones con un servicio proxy dedicado (nginx, HAProxy, etc. .).

¡¡Gracias!!

Node.js es un marco de E / S asíncrono basado en eventos que utiliza el motor JavaScript V8 de Google.

Node.js se usa para desarrollar aplicaciones que hacen un uso intensivo de la capacidad de ejecutar JavaScript tanto en el cliente como en el lado del servidor y, por lo tanto, se benefician de la reutilización del código y la falta de cambio de contexto.

Para facilitar aún más el desarrollo de JavaScript complejo, Node.js admite el estándar CommonJS que permite el desarrollo modular y la distribución de software en paquetes a través del Administrador de paquetes de nodos.

Las aplicaciones que se pueden escribir con Node.js incluyen, entre otras:

  • Servidores de archivos estáticos
  • Marcos de aplicaciones web
  • Mensajería middleware
  • Servidores para juegos HTML5 multijugador

Node.js es una plataforma diseñada y creada en el tiempo de ejecución JavaScript de Chrome para crear aplicaciones de red rápidas, altamente escalables y confiables. La plataforma Node.js utiliza un modelo de E / S sin bloqueo controlado por eventos que lo convierte en una opción muy liviana y eficiente, ideal para aplicaciones basadas en la web en tiempo real con uso intensivo de datos que se ejecutan en dispositivos distribuidos.

Controlado por eventos se refiere a la situación en la que el servidor solo reacciona cuando ocurre un evento. Esto permite a los desarrolladores diseñar aplicaciones web “en tiempo real” de alto rendimiento, altamente confiables y escalables.

Hay muchas aplicaciones que se pueden escribir usando ode.JS, algunas de ellas se enumeran a continuación:

Mensajería / mensajes de texto middleware

Marcos de aplicaciones web

Servidores para juegos multijugador basados ​​en HTML5

Servidores de archivos estáticos

Aplicaciones de back-end de API

Servicios en tiempo real como chat

Blogs, CMS, aplicaciones de redes sociales.

Utilidades y herramientas

Cualquier otra aplicación que no requiera mucha CPU.

Puede leer más sobre el marco Node.JS aquí.

Node js se usa en secuencias de comandos del lado del servidor para diseñar aplicaciones de back-end que se conocen hoy en día, nodejs está creciendo rápidamente debido a la belleza de la codificación y la seguridad.

Supera el PHP y jsp y otros scripts del lado del servidor en el futuro

Nodo js es una plataforma basada en el tiempo de ejecución de JavaScript de Chrome para crear fácilmente aplicaciones de red rápidas y escalables. Nodo js utiliza un modelo de E / S sin bloqueo controlado por eventos que lo hace liviano y eficiente, perfecto para aplicaciones en tiempo real con uso intensivo de datos que se ejecutan en dispositivos distribuidos.

http://www.rationaltechnologies.com

Node.js, o solo Node como se le llama normalmente, se utiliza para crear aplicaciones que hacen una utilización abrumadora de la capacidad de ejecutar JavaScript tanto en el cliente como en el lado del servidor y, en este sentido, se benefician de la facilidad de uso de código y la ausencia de cambio de escenario.

Buscando desarrollado su sitio web nodo js angular, entonces puede tener [correo electrónico protegido] http://piccosoft.com/ Esta es una de las principales empresas de desarrollo basadas en nodo js y angularjs.