O proxecto NGINX publicou un conxunto de ferramentas para desenvolver módulos na linguaxe Rust

Os desenvolvedores do proxecto NGINX presentaron o kit de ferramentas ngx-rust, que permite crear módulos para o servidor http NGINX e un proxy multiprotocolo na linguaxe de programación Rust. O código ngx-rust distribúese baixo a licenza Apache 2.0 e actualmente está en fase beta.

Inicialmente, o conxunto de ferramentas desenvolveuse como un proxecto para acelerar o desenvolvemento dunha malla de servizo compatible con Istio para a plataforma Kubernetes que se executa sobre NGINX. O produto nunca foi máis aló do prototipo e quedou estancado durante varios anos, pero os enlaces de exemplo publicados durante o proceso do prototipo foron utilizados pola comunidade en proxectos de terceiros para ampliar as capacidades de NGINX en Rust.

Despois dun tempo, a empresa F5 necesitaba escribir un módulo especializado para NGINX para protexer os seus servizos, no que quería utilizar a linguaxe Rust para reducir o risco de erros ao traballar coa memoria. Para resolver o problema, levouse a cabo o autor de ngx-rust, que se encargou de desenvolver ferramentas novas e melloradas para crear módulos para NGINX na linguaxe Rust.

O conxunto de ferramentas inclúe dous paquetes de caixas:

  • nginx-sys: xerador de enlace baseado no código fonte de NGINX. A utilidade carga o código NGINX e todas as súas dependencias asociadas e, a continuación, usa bindgen para crear ligazóns sobre as funcións orixinais (FFI, interface de función externa).
  • ngx: unha capa para acceder a funcións C desde o código Rust, unha API e un sistema para reexportar ligazóns creadas mediante nginx-sys.

Fonte: opennet.ru

Engadir un comentario