Angie, la bifurcación de Nginx creada por desarrolladores que abandonaron F5
Se dio a conocer la liberación de la primera versión del servidor HTTP de alto rendimiento y el servidor proxy multiprotocolo «Angie» la cual es una bifurcación de Nginx creada por un grupo de antiguos desarrolladores de proyectos que abandonaron F5 Network.
Para quienes desconocen de NGINX, debe saber que este permite a las empresas de transformación digital modernizar sus aplicaciones monolíticas existentes y ofrecer nuevas aplicaciones basadas en microservicios.
Hay que recordar que hace poco más de 2 años Nginx y F5 anunciaron conjuntamente la noticia sobre la adquisición definitiva de Nginx, por parte del grupo F5 Network, un líder en servicios de aplicaciones de múltiples nubes, por un valor empresarial total de $ 670 millones.
Sin embargo, a pesar de las explicaciones, las dudas y preguntas permanecen dentro de la comunidad de código abierto sobre esta adquisición y el futuro de las soluciones de código abierto de Nginx, a lo cual ya podemos ver un poco el rumbo que está tomando, pues por la parte de los detractores, estos han tomado la decisión de continuar con un proyecto por su parte.
Sobre Angie
Sobre el proyecto los desarrolladores lo describen de la siguiente forma:
Angie es un servidor web eficiente, potente y escalable, que fue bifurcado de nginx por algunos de sus antiguos desarrolladores principales, con la intención de extender la funcionalidad mucho más allá de la versión original.
Angie es un reemplazo directo para nginx, por lo que puede usar la configuración de nginx existente sin cambios importantes.
Para apoyar el desarrollo del proyecto y continuar apoyando a los usuarios de Nginx en Rusia (hay que recordar que fue creada por Igor Sysoev, un ingeniero de software ruso y que en Rusia se han aplicado diversos bloqueos por el actual conflicto con Ucrania), se creó la empresa Web Server, que recibió una inversión de $ 1 millón.
Entre los copropietarios de la nueva empresa: Valentin Bartenev (líder del equipo que desarrolló el producto Nginx Unit), Ivan Poluyanov (exjefe de los desarrolladores front-end de Rambler y Mail.Ru), Oleg Mamontov (jefe de NGINX Inc. equipo de soporte técnico) y Ruslan Ermilov (ru@FreeBSD.org). Zaur Abasmirzoev, ex director técnico de lenta.ru, ha sido nombrado director de la nueva empresa. Igor Sysoev, el fundador de Nginx, no participa en el proyecto.
El lanzamiento de Angie 1.0.0 se bifurca del código base nginx 1.23.2 e incluye los siguientes cambios :
- Se agregó la implementación de una interfaz HTTP RESTful para acceder a información básica del servidor web y estadísticas sobre conexiones de clientes, zonas de memoria compartida, solicitudes HTTP, almacenamiento en caché de respuestas HTTP, consultas DNS, sesiones TCP/UDP creadas por el módulo «stream» y zonas con restricciones implementadas utilizando los módulos limit_conn y limit_req. Las estadísticas se generan en formato JSON. Se proporciona una nueva directiva «api» para habilitar la interfaz HTTP RESTful.
- La directiva «status_zone» se ha agregado al módulo «http», que define la zona para recopilar estadísticas sobre las solicitudes procesadas en el contexto de las directivas «servidor» y «ubicación».
- La directiva «status_zone» se ha agregado al módulo «stream», que define la zona para recopilar estadísticas sobre las sesiones TCP y UDP.
- El parámetro «status_zone» se ha agregado a la directiva «resolver», que define la zona para acumular estadísticas sobre las consultas de DNS enviadas.
- Se agregó la variable $angie_version con la versión del servidor Angie.
Finalmente se menciona que por la parte de los planes futuros, se tiene en mente una expansión significativa de la funcionalidad original mientras se mantiene la compatibilidad básica con la configuración de Nginx y la capacidad de usar Angie como reemplazo de Nginx sin cambiar significativamente la configuración.
En comparación con el Nginx original, se planea mejorar cualitativamente la tolerancia a fallas, aumentar el rendimiento, simplificar el mantenimiento y agregar funciones adicionales para los sistemas de clúster.
Para los interesados en poder conocer más al respecto, deben saber que el código fuente de Angie está disponible bajo una licencia BSD y pueden consultarlo en el siguiente enlace.