Projekt NGINX objavio je alat za razvoj modula u jeziku Rust

Programeri projekta NGINX predstavili su ngx-rust toolkit koji vam omogućuje stvaranje modula za NGINX http poslužitelj i proxy s više protokola u programskom jeziku Rust. Kod ngx-rust distribuira se pod licencom Apache 2.0 i trenutno je u beta verziji.

U početku je skup alata razvijen kao projekt za ubrzavanje razvoja servisne mreže kompatibilne s Istio za Kubernetes platformu koja radi na vrhu NGINX-a. Proizvod nikad nije otišao dalje od prototipa i stagnirao je nekoliko godina, ali zajednica je koristila primjere vezanja objavljene tijekom procesa izrade prototipa u projektima trećih strana za proširenje mogućnosti NGINX-a u Rustu.

Nakon nekog vremena tvrtka F5 trebala je napisati specijalizirani modul za NGINX kako bi zaštitila svoje usluge, u kojem je željela koristiti Rust jezik kako bi smanjila rizik od grešaka pri radu s memorijom. Za rješavanje problema angažiran je autor ngx-rust-a, koji je dobio zadatak razviti nove i poboljšane alate za izradu modula za NGINX na jeziku Rust.

Komplet alata uključuje dva paketa sanduka:

  • nginx-sys - Generator vezanja temeljen na NGINX izvornom kodu. Uslužni program učitava NGINX kod i sve njegove povezane ovisnosti, a zatim koristi bindgen za stvaranje povezivanja preko izvornih funkcija (FFI, sučelje stranih funkcija).
  • ngx - sloj za pristup C funkcijama iz Rust koda, API i sustav za ponovni izvoz veza kreiranih pomoću nginx-sys.

Izvor: opennet.ru

Dodajte komentar