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

Waendelezaji wa mradi wa NGINX wametoa zana ya zana ya ngx-rust, ambayo inakuwezesha kuunda moduli za seva ya NGINX HTTP na proksi ya multiprotocol kwa kutumia lugha ya programu ya Rust. Msimbo wa ngx-rust unasambazwa chini ya leseni ya Apache 2.0 na kwa sasa iko kwenye beta.

Zana ya zana iliundwa awali kama mradi wa kuharakisha uundaji wa matundu ya huduma yanayolingana na Istio kwa jukwaa la Kubernetes linaloendesha juu ya NGINX. Bidhaa haikusogea zaidi ya hatua ya mfano na ilidumaa kwa miaka kadhaa, lakini viunga vya mfano vilivyochapishwa wakati wa mchakato wa mfano vilitumiwa na jumuiya katika miradi ya watu wengine kupanua uwezo wa NGINX katika lugha ya Rust.

Baada ya muda, F5 ilihitaji kuandika moduli maalum ya NGINX ili kulinda huduma zake, na walitaka kutumia lugha ya Rust ili kupunguza hatari ya makosa ya kumbukumbu. Ili kutatua tatizo hili, walileta mwandishi wa ngx-rust, ambaye alipewa kazi ya kuendeleza zana mpya na zilizoboreshwa za kuunda moduli za NGINX huko Rust.

Seti ya zana inajumuisha vifurushi viwili vya crate:

  • nginx-sys ni jenereta inayofunga kulingana na nambari ya chanzo ya NGINX. Shirika linapakua msimbo wa NGINX na vitegemezi vyake vyote, kisha hutumia bindgen kuzalisha vifungo vya kazi asili (FFI, kiolesura cha utendakazi cha kigeni).
  • ngx ni 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

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster