Projekt NGINX zveřejnil sadu nástrojů pro vývoj modulů v jazyce Rust

Vývojáři projektu NGINX vydali sadu nástrojů ngx-rust, která umožňuje vytvářet moduly pro HTTP server NGINX a multiprotokolovou proxy pomocí programovacího jazyka Rust. Kód ngx-rust je distribuován pod licencí Apache 2.0 a je aktuálně v beta verzi.

Sada nástrojů byla původně vyvinuta jako projekt pro urychlení vývoje servisní sítě kompatibilní s Istio pro platformu Kubernetes běžící na NGINX. Produkt se nikdy nedostal za fázi prototypu a několik let stagnoval, ale ukázkové vazby publikované během procesu prototypování byly komunitou použity v projektech třetích stran k rozšíření možností NGINX v jazyce Rust.

Po nějaké době potřebovala společnost F5 napsat specializovaný modul NGINX pro ochranu svých služeb a chtěla použít jazyk Rust ke snížení rizika chyb paměti. Aby tento problém vyřešila, přizvala autora ngx-rust, který měl za úkol vyvinout nové a vylepšené nástroje pro vytváření modulů NGINX v Rustu.

Sada nástrojů obsahuje dva balíčky beden:

  • nginx-sys je generátor vazeb založený na zdrojovém kódu NGINX. Nástroj stáhne kód NGINX a všechny jeho závislosti a poté pomocí bindgenu vygeneruje vazby pro nativní funkce (FFI, foreign function interface).
  • ngx je vrstva pro přístup k funkcím jazyka C z kódu Rust, API a systém pro reexport vazeb vytvořených pomocí nginx-sys.

Zdroj: opennet.ru

Kupte si spolehlivý hosting pro stránky s DDoS ochranou, VPS VDS servery 🔥 Kupte si spolehlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster