¿Cuál es el mejor uso de Node.js?

Node.JS tiene una fuerza única e increíble: velocidad de E / S. El bucle de eventos de Node puede procesar solicitudes de E / S como un Blendtec se mezcla a través de … cualquier cosa, aparentemente.

Dicho esto, Node es mucho más flexible de lo que muchas personas le dan crédito. Tiene el beneficio de ser el destinatario del trabajo que se realiza en los motores JS en el mercado de navegadores increíblemente competitivo. Los motores JS son un orden de magnitud más rápido que hace cinco años, y Apple, Google, Microsoft y Mozilla están trabajando frenéticamente para tener el motor más rápido. Las apuestas son enormes y los beneficios inmensos. Ese tipo de energía simplemente no existe en el lado del servidor.

La mayor debilidad de Node es lo mismo que le da fuerza: el bucle de eventos de un solo subproceso. Si llama a un cálculo que bloquea el bucle de eventos, su servidor completo no responde hasta que el proceso de bloqueo se completa o agota el tiempo de espera. Entonces, aunque Node es realmente notablemente rápido para muchos cálculos, hasta que JavaScript deje de ser de un solo subproceso, lo que parece inevitable, su procesamiento de datos pesado debe ser manejado por servicios externos a los que Node llama.

Es por eso que Node se usa con frecuencia como API. Todo lo que debe hacer Node en este escenario es manejar una solicitud y llamar al servicio apropiado. Luego espera la respuesta de ese servicio mientras dirige otras solicitudes. Es por eso que recomiendo a los desarrolladores de pila completa que aprendan un idioma de alto nivel y un lenguaje de nivel inferior. Las llamadas a nodos Java, Go o C pueden crear una capa de aplicación poderosa.

Muchos sitios web más pequeños casi no requieren procesamiento. Por lo general, son aplicaciones CRUD simples que solo llaman a una base de datos. Como tal, puede usar Nodo fácilmente para toda su capa de aplicación. Si solo tiene unos pocos cientos de usuarios concurrentes, a menos que sea un desarrollador terrible, no alcanzará los límites de Node.

Del mismo modo, para sitios web de poco tráfico, Node puede ser un excelente servidor web. Puede empaquetar código, renderizar previamente las aplicaciones de Angular 2 o React, y manejar de forma segura pequeñas cantidades de cálculos sin bloquear demasiado.

Echa un vistazo a la nueva serie de tutoriales. Hit Suscribir

Nodo JS Tutoriales

Si te gustó el video, no olvides SUSCRIBIRTE. Nunca te pierdas una actualización.

Node.js se utiliza para desarrollar aplicaciones de red y entorno de tiempo de ejecución del servidor en JavaScript. Es ideal para crear aplicaciones en tiempo real debido a su arquitectura basada en eventos y modelos de E / S sin bloqueo.

Estas son las principales razones por las cuales el desarrollo de Node.Js es más importante ahora en días

  1. Alta velocidad:
  2. Lenguaje neutral:
  3. Rendimiento y escalabilidad:
  4. Aplicación web en tiempo real:
  5. Transmisión de datos:

Node.js funciona bien para el desarrollo web si sabes lo que estás haciendo. Los marcos como Meteor.js hacen que el desarrollo rápido de aplicaciones de una sola página sea relativamente fácil.

También es bueno para usar en entornos donde el rendimiento es importante. Para manejar miles de solicitudes en paralelo, Node.js funciona mejor que Java EE.

Comparación de rendimiento entre Node.js y Java EE – DZone Performance

Node.js no es ideal para ninguna aplicación web. Pero es muy eficiente en el manejo de una gran cantidad de solicitudes, conexiones de E / S, funciona muy bien con los zócalos web y la extracción de cometas. Es un lenguaje de subproceso único, controlado por eventos y sin bloqueo.

Claro, Node.js también se puede utilizar para el desarrollo web utilizando el framework express, también puedes controlar drones y controles remotos con él, solo por mencionar algunas cosas que node js puede hacer aparte del aprendizaje automático.

Podría decirse que el mejor uso es alguna arquitectura de microservicio: empujar JSON o hacer malabares con las conexiones WebSockets, con grandes cargas de E / S, cargas de CPU livianas y pequeños programas en cada nodo (juego de palabras intencionado; y probablemente también sea de donde proviene el nombre).

Para cuando llegue a la representación de plantillas del lado del servidor o a los programas multimillonarios (monolíticos), probablemente haya ido demasiado lejos.