12 puntos por GN⁺ 2023-09-11 | 3 comentarios | Compartir por WhatsApp
  • Se usa como proxy inverso, para servir assets estáticos y para ejecutar aplicaciones web
  • Puede ejecutar código de aplicaciones en varios lenguajes: Go, Java, Node.js, Perl, PHP, Python, Ruby, WebAssembly
  • Condensa varias capas del stack moderno de aplicaciones en una sola solución, con foco en rendimiento, latencia y escalabilidad
  • Diseñado para soportar toda arquitectura web sin importar su complejidad, desde grandes empresas hasta sitios personales
  • Soporta escalado estable incluso bajo cargas de nivel de producción
  • Permite actualizaciones dinámicas de configuración sin interrupciones mediante una API JSON RESTful (incluye especificación OpenAPI)
  • La arquitectura de NGINX Unit es asíncrona y multihilo, y está compuesta por varios procesos para maximizar el uso de plataformas de cómputo modernas mientras garantiza seguridad y solidez
  • Ofrece opciones de instalación rápida para macOS, Docker, Amazon Linux, Fedora, RedHat, Debian y Ubuntu

3 comentarios

 
GN⁺ 2023-09-11
Comentarios en Hacker News
  • Hay reportes de que, cuando se usa con PHP, Nginx Unit supera a la combinación de Nginx y php-fpm.
  • Al ejecutar PHP mediante Nginx Unit en un entorno Docker, ya no se necesitan contenedores separados para http y fpm, por lo que se parece a mod_php de Apache.
  • Nginx Unit soporta varios lenguajes, incluidos lenguajes compilados a binario, Go, JavaScript (Node.js), Java, Perl, PHP, Python, Ruby y WebAssembly.
  • Algunos usuarios cuestionan el énfasis en la configuración mediante API y prefieren configurar el servidor de aplicaciones a través de archivos para tener un estado inicial predecible.
  • Nginx Unit permite eliminar php-fpm de la pila, lo que resulta útil al meter aplicaciones PHP en contenedores.
  • Los usuarios reportan mejoras de velocidad considerables al probar aplicaciones PHP Laravel complejas con Nginx Unit.
  • Nginx Unit permite ejecutar varias aplicaciones con distintos runtimes/versiones de lenguaje sin necesidad de contenedores Docker separados.
  • Algunos usuarios sugieren que Nginx debería ofrecer una página que explique en qué se diferencia Nginx Unit de Nginx y por qué debería ser algo separado.
  • La interfaz de configuración de Nginx Unit depende mucho de JSON, lo que a algunos usuarios les parece engorroso.
  • A pesar de la etiqueta de "Universal", Nginx Unit no soporta C++, Rust ni ASP.NET, pero sí Perl.
  • Algunos usuarios siguen cuestionando qué ventajas ofrece Nginx Unit frente a Nginx estándar, así como el control por JSON vía Curl y el soporte integrado de lenguajes.
  • Nginx Unit no incluye certificados TLS automáticos, y eso todavía se hace manualmente con Certbot.
 
xguru 2023-09-11
  • Cuando se usa con PHP, Nginx Unit supera a la combinación de Nginx y php-fpm
  • Si ejecutas PHP mediante Nginx Unit en un entorno Docker, ya no se necesitan contenedores separados para http y fpm, por lo que se vuelve similar a mod_php de Apache

Estas dos partes me parecen interesantes.

 
galadbran 2023-09-11

Este enfoque también encajaba mejor con la recomendación de Jocker Container de tener un servicio por contenedor, así que lo probé, pero terminé descartándolo porque tenía la limitación de que dentro de una misma app no se podían combinar aplicaciones con enrutamiento como Laravel y el servicio de archivos PHP simples.
Además, en general sentí que la curva de aprendizaje era pronunciada.