¿Qué es el ‘servidor web’ en NodeJS y por qué debería usarse para aplicaciones empresariales en 2016 en lugar de Java / Go / PHP / Python?

Node.js es una plataforma de programación que puede ejecutar un servidor http pero nunca conectarías tu node.js directamente al puerto 80 y lo servirías a Internet (para aplicaciones de producción de todos modos). Hay servidores web que pueden ayudarlo con todas esas funciones que escribió mientras tiene un mayor ancho de banda disponible.

Los servidores web, como Apache y ngnix, generalmente están sirviendo activos desnudos, como imágenes, JavaScript, CSS y archivos HTML, o bien son un proxy para otras aplicaciones / servicios.

Por lo general, la forma en que usaría node.js sería la siguiente:

Internet -> ngnix -> node.js

Esto es lo mismo para otros idiomas también. Si desea una aplicación web de alto rendimiento, usaría un servidor web para ayudar a manejar el tráfico.

Una vez que su aplicación de producción escala más allá de un servidor, puede usar ngnix o Apache para equilibrar la carga del tráfico y dirigirlo a diferentes servidores. Estas son características realmente útiles y útiles para tener.

TLDR: puede ejecutar su aplicación directamente en el puerto 80, pero si está en producción, es mejor que use todas las funciones integradas que ofrece uno de los muchos servidores web como Apache o ngnix.

Espero que esto ayude.

NodeJS tiene la ventaja de que permite compartir código entre el front-end y el back-end (piense en las funciones de validación, que a menudo necesita dos veces, una por razones de UX, y luego otra por razones de seguridad porque no puede confiar en los datos enviados por el cliente, aunque con declaración validación esto es menos importante).

Otra ventaja es que no hay “cambio de contexto”: puede trabajar en el front-end y el back-end en el mismo idioma, por lo que cuando va y viene, es menos probable que se confunda y haga algo estúpido (incluso idiomas muy similares a menudo tendrán diferencias sutiles que debes tener en cuenta).

Creo que la razón más importante para la popularidad de Node es el segundo párrafo; al menos en los casos en que lo he usado, esta fue la razón (combinado con el hecho de que no necesitaba un backend particularmente sofisticado de todos modos, solo necesitaba para enviar mensajes a través de WebSockets).

Me gustaría compartir el estudio de caso de la implementación de Node.js en producción por paypal y Netflix que lo ayudará a identificar la razón por la cual están usando Node.js en lugar de Java.

POC en Paypal:

En primer lugar, estaban usando Java en el lado del servidor y javascript en el lado del navegador. Primero intentaron desarrollar el prototipo usando Node.js y lo mismo con Java también. Para desarrollar el prototipo usando Java, asignan un equipo de 5 desarrolladores y un equipo de 2 desarrolladores para usar node.js.

Sorprendentemente, obtuvieron un resultado increíble. El equipo de 2 desarrolladores atrapó al equipo de desarrolladores de Java en el desarrollo de prototipos. Eso es muy rápido. Puede desarrollar una aplicación en medio tiempo utilizando Node.js en comparación con Java.

#Java To Node.js

Razón principal para pasar a Node.js

  • Tener un idioma común tanto para el lado del servidor como para el del navegador.
  • Rendimiento que ofrece Node.js. Desde un tiempo de inicio de más de 40 minutos, pasaron a menos de un minuto
  • Node tiene muchos módulos que son en su mayoría de código abierto.
  • Para construir la aplicación de página única.

Lea más en mi blog: ¿Cómo Netflix y Paypal hicieron la transformación del producto usando Node.js? El | Techuz

More Interesting

¿Qué empresa ofrece desarrollo de aplicaciones web en Bangalore?

¿Cómo surgió la primera aplicación JavaScript de una sola página?

¿Cuál es la característica principal (que falta) de su pila de desarrollo web (móvil) favorita y por qué?

¿Qué es importante para la experiencia del usuario y el diseño de aplicaciones / sitios web relacionados con la muerte?

¿Qué arquitectura, en Python, debo usar para interactuar con una API web de terceros?

¿Cómo crear una aplicación básica o blog? Quiero hacer una aplicación básica pero también útil y mencionarla en mis solicitudes universitarias al respecto

¿Cuál es el mejor software de gestión / organización del tiempo?

¿Qué debe hacer al preparar una aplicación web para pruebas beta desde el punto de vista frontal?

Estamos creando una aplicación web de agregador de contenido usando React.js + Node.js. ¿Cuáles son las mejores prácticas / lecciones aprendidas al construir con este marco?

Cómo desarrollar un sistema de seguimiento de asistencia basado en la web para los empleados

¿Qué es un firewall y fuzzers de aplicaciones web?

¿Por dónde empiezo con el desarrollo de una aplicación de lista de tareas colaborativa? ¿La base de datos NoSQL y Node.js son adecuados para esto?

Escalabilidad: ¿Cómo encontrar cuellos de botella en su sitio web / producto web durante las pruebas?

¿Cuál es el propósito de arañar una aplicación web en Burp Suite?

¿Es cierto que Visual Basic es más seguro que PHP (Laravel 5.4)?