Mradi wa NGINX umechapisha zana za kuunda moduli katika lugha ya Rust

Watengenezaji wa mradi wa NGINX waliwasilisha zana ya zana ya ngx-kutu, ambayo hukuruhusu kuunda moduli za seva ya NGINX http na proksi ya itifaki nyingi katika lugha ya programu ya Rust. Msimbo wa ngx-rust unasambazwa chini ya leseni ya Apache 2.0 na kwa sasa iko kwenye beta.

Hapo awali, zana iliundwa kama mradi wa kuharakisha uundaji wa matundu ya Huduma inayolingana na Istio kwa jukwaa la Kubernetes linaloendesha juu ya NGINX. Bidhaa haijawahi kupita zaidi ya mfano na ilisimama kwa miaka kadhaa, lakini vifungo vya mfano vilivyochapishwa wakati wa mchakato wa mfano vilitumiwa na jamii katika miradi ya watu wengine kupanua uwezo wa NGINX huko Rust.

Baada ya muda fulani, kampuni ya F5 ilihitaji kuandika moduli maalum kwa NGINX kulinda huduma zake, ambayo ilitaka kutumia lugha ya Rust ili kupunguza hatari ya makosa wakati wa kufanya kazi na kumbukumbu. Ili kutatua tatizo, mwandishi wa ngx-rust aliletwa, ambaye alipewa kazi ya kutengeneza zana mpya na zilizoboreshwa za kuunda moduli za NGINX katika lugha ya Rust.

Seti ya zana inajumuisha vifurushi viwili vya crate:

  • nginx-sys - Jenereta inayofunga kulingana na msimbo wa chanzo wa NGINX. Huduma hupakia msimbo wa NGINX na tegemezi zake zote zinazohusiana, na kisha hutumia bindgen kuunda vifungo juu ya kazi asili (FFI, kiolesura cha utendakazi cha kigeni).
  • ngx - safu ya kupata vitendaji vya C kutoka kwa nambari ya kutu, API na mfumo wa kusafirisha tena vifungo vilivyoundwa kwa kutumia nginx-sys.

Chanzo: opennet.ru

Kuongeza maoni