El proyecto NGINX ha publicado un conjunto de herramientas para el desarrollo de módulos en el lenguaje Rust

Los desarrolladores del proyecto NGINX han presentado la herramienta ngx-rust, que permite crear módulos para el servidor http y proxy multiprotocolo NGINX utilizando el lenguaje de programación Rust. El código de ngx-rust se distribuye bajo la licencia Apache 2.0 y actualmente se encuentra en estado beta.

Inicialmente, la herramienta se desarrolló como un proyecto para acelerar el desarrollo de un Service mesh compatible con Istio para la plataforma Kubernetes, que opera sobre NGINX. El producto nunca salió del prototipo y estuvo en estancamiento durante varios años, pero los ejemplos de vinculaciones publicados durante la creación del prototipo fueron utilizados por la comunidad en proyectos independientes para expandir las capacidades de NGINX en Rust.

Después de un tiempo, la empresa F5 necesitaba la creación de un módulo especializado para NGINX para proteger sus servicios, en el cual deseaban usar el lenguaje Rust para reducir el riesgo de errores en la gestión de la memoria. Para resolver esta tarea, se invitó al autor de ngx-rust, a quien se le encargó desarrollar una nueva y mejorada herramienta para crear módulos para NGINX en Rust.

La herramienta incluye dos paquetes crate:

  • nginx-sys — generador de vinculaciones basado en los códigos fuente de NGINX. La utilidad carga el código de NGINX y todas sus dependencias relacionadas, y luego utiliza bindgen para formar las envolturas sobre las funciones originales (FFI, interfaz de función extranjera).
  • ngx — capa para acceder a las funciones en C desde el código Rust, API y sistema de reexportación de envolturas creadas con nginx-sys.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster