Thionndaidh Cloudflare bho NGINX chun neach-ionaid Pingora aige fhèin, sgrìobhte ann an Rust

Dh’ ainmich Cloudflare gluasad an lìonra lìbhrigidh susbaint aca gu bhith a’ cleachdadh neach-ionaid Pingora, sgrìobhte ann an cànan Rust. Bidh an neach-ionaid ùr a’ dol an àite an rèiteachadh stèidhichte air frithealaiche NGINX le sgriobtaichean Lua, agus a’ pròiseasadh còrr air trillean iarrtas gach latha. Thathas a’ toirt fa-near gun do leig an gluasad gu neach-ionaid sònraichte chan ann a-mhàin feartan ùra a chuir an gnìomh agus tèarainteachd àrdachadh mar thoradh air obrachadh sàbhailte cuimhne, ach cuideachd lean gu àrdachadh mòr ann an coileanadh agus sàbhalaidhean ghoireasan - chan fheum am fuasgladh stèidhichte air Pingora an cleachdadh. de Lua, agus mar sin ag ithe 70% nas lugha de ghoireasan CPU agus 67% nas lugha de chuimhne fhad ‘s a tha e a’ giullachd an aon uiread de thrafaig.

Airson ùine mhòr, bha siostam airson trafaic proxy eadar luchd-cleachdaidh agus frithealaichean deireannach stèidhichte air sgriobtaichean NGINX agus Lua a ’riarachadh feumalachdan Cloudflare, ach mar a dh’ fhàs an lìonra agus cho iom-fhillteachd a bha e, cha robh fuasgladh uile-choitcheann gu leòr, an dà chuid a thaobh coileanadh agus mar thoradh air cuingealachaidhean ann an leudachadh agus buileachadh chothroman ùra do luchd-dèiligidh. Gu sònraichte, bha dùbhlain ann a bhith a’ cur ri gnìomhachd taobh a-muigh geata sìmplidh agus cothromachadh luchdan. Mar eisimpleir, bha e riatanach, ma dh’ fhailicheas am frithealaiche iarrtas a phròiseasadh, an t-iarrtas a chuir air ais gu frithealaiche eile, a’ toirt dha seata eadar-dhealaichte de chinn HTTP.

An àite ailtireachd a bhios a ’sgaradh iarrtasan gu pròiseasan luchd-obrach fa-leth, bidh Pingora a’ cleachdadh modal ioma-snàithlean, a sheall ann an cùisean cleachdaidh Cloudflare (dùmhlachd àrd de thrafaig bho dhiofar làraich le gluasad staitistigeil mòr) cuairteachadh nas èifeachdaiche de ghoireasan eadar coraichean CPU. Gu sònraichte, dh’ adhbhraich ceangal nginx de dh’ iarrtasan neo-chothromach ri pròiseasan eallach neo-chothromach air na coraichean CPU, a’ leantainn gu iarrtasan dian-ghoireasan agus a’ cur bacadh air I/O a’ slaodadh sìos giullachd iarrtasan eile. A bharrachd air an sin, cha do leig ceangal an amar ceangail ri pròiseasan làimhseachaidh ath-chleachdadh de cheanglaichean stèidhichte mar-thà bho phròiseasan làimhseachaidh eile, a lughdaicheas èifeachdas nuair a tha àireamh mhòr de phròiseasan làimhseachaidh ann.

NGINX:

Thionndaidh Cloudflare bho NGINX chun neach-ionaid Pingora aige fhèin, sgrìobhte ann an Rust

Pingora:

Thionndaidh Cloudflare bho NGINX chun neach-ionaid Pingora aige fhèin, sgrìobhte ann an Rust

Le bhith a’ buileachadh Pingora bha e comasach an àireamh de shuidheachaidhean de cheanglaichean ùra a lughdachadh 160 uair agus an roinn de cheistean ath-chleachdadh àrdachadh bho 87.1% gu 99.92%. A bharrachd air a bhith a’ lughdachadh ath-cheangail agus cleachdadh nas èifeachdaiche de choraichean CPU, bha leasachadh dèanadais an neach-ionaid ùr gu ìre mhòr mar thoradh air toirt air falbh luchd-làimhseachaidh slaodach Lua air an cleachdadh le nginx.

Chaidh an cànan Rust a thaghadh gus àrd-choileanadh a choileanadh còmhla ri cothrom air innealan gus dèanamh cinnteach à obrachadh sàbhailte le cuimhne. Thathas ag ainmeachadh, a dh’ aindeoin innleadairean làn teisteanais Cloudflare agus ag ath-sgrùdadh a ’chòd sgrìobhte ann an cànan C, cha robh e comasach mearachdan a sheachnadh a dh’ adhbhraich duilgheadasan cuimhne (mar eisimpleir, so-leòntachd ann am parser HTML). A thaobh a’ chòd ùr, tha e a’ bruidhinn air cùisean de bhith a’ dèanamh anailis air fàilligidhean ann am Pingora, a thàinig gu bhith air adhbhrachadh chan ann le duilgheadasan san tagradh, ach le mearachd ann an kernel Linux agus fàilligidhean bathar-cruaidh.

A bharrachd air an sin, is urrainn dhuinn iomradh a thoirt air aithris Linus Torvalds, a chaidh a thogail aig co-labhairt Open-Source Summit Europe a tha a’ gabhail àite na làithean seo, a thaobh a bhith a ’toirt a-steach taic don chànan Rust anns an kernel Linux. Cha robh pìosan airson draibhearan inneal a leasachadh anns a’ chànan Rust air an toirt a-steach don kernel 6.0, ach a rèir Linus, is coltaiche gun tèid an gabhail a-steach don kernel 6.1; chan eil e a’ dol a chuir dàil air amalachadh. Mar bhrosnachadh airson taic a chuir ri Rust, a bharrachd air a’ bhuaidh adhartach air tèarainteachd, tha Linus cuideachd ag ainmeachadh a’ chothruim ùidh a thogail ann a bhith ag obair air cridhe chom-pàirtichean ùra, rud a tha cudromach ann an co-theacsa seann-timers.

Source: fosgailtenet.ru

Cuir beachd ann