nginx 1.18.0 khupha

Emva konyaka wophuhliso imelwe ngu isebe elitsha elizinzileyo lomncedisi we-HTTP osebenza kakhulu kunye nomncedisi weprotocol ezininzi XLUMX, ethe yafunxa utshintsho oluqokelelweyo phakathi kwesebe eliphambili 1.17.x. Kwixesha elizayo, zonke iinguqu kwisebe elizinzile 1.18 ziya kuhambelana nokupheliswa kweempazamo ezinzulu kunye nobuthathaka. Isebe eliphambili le-nginx 1.19 liza kwenziwa ngokukhawuleza, apho ukuphuhliswa kweempawu ezintsha kuya kuqhubeka. Kubasebenzisi abaqhelekileyo abangenawo umsebenzi wokuqinisekisa ukuhambelana neemodyuli zomntu wesithathu, icetyisiwe sebenzisa isebe eliphambili, ngesiseko apho ukukhutshwa kwemveliso yorhwebo i-Nginx Plus yenziwa rhoqo kwiinyanga ezintathu.

Ngokutsho Ingxelo ka-Aprili I-Netcraft nginx isetyenziswe kwi-19.56% yazo zonke iisayithi ezisebenzayo (unyaka odlulileyo i-20.73%, iminyaka emibini edlulileyo 21.02%), ehambelana nendawo yesibini ekudumeni kolu didi (isabelo se-Apache sihambelana ne-27.64%, i-Google - 10.03%, iMicrosoft IIS - 4.77%) . Ngexesha elifanayo, xa kuqwalaselwa zonke iisayithi, i-nginx igcina ubunkokeli bayo kwaye ithatha i-36.91% yemarike (kunyaka ophelileyo i-27.52%), ngelixa isabelo se-Apache sihambelana ne-24.73%, iMicrosoft IIS - 12.85%, i-Google - 3.42%.

Phakathi kwezigidi ezityelelwe kakhulu kwiindawo zehlabathi, isabelo se-nginx yi-25.54% (unyaka odlulileyo 26.22%, kwiminyaka emibini edlulileyo 23.76%). Okwangoku, malunga ne-459 yezigidi zewebhusayithi zisebenzisa i-Nginx (i-397 yezigidi ngonyaka odlulileyo). Ngu inikiwe I-W3Techs nginx isetyenziswe kwi-31.9% yamaziko kwisigidi esityelelwe kakhulu, ngo-Ephreli wonyaka ophelileyo eli nani laliyi-41.8%, unyaka ngaphambi - i-38% (ukwehla kuchazwa yinguqu yokwahlula i-accounting ye-Cloudflare http server). Isabelo se-Apache sehle ngonyaka ukusuka kwi-43.6% ukuya kwi-38.9%, kunye nesabelo seMicrosoft IIS ukusuka kwi-8.6% ukuya kwi-8.3%. ERashiya nginx iyasetyenziswa kwi-78.9% yeendawo ezityelelwe kakhulu (kunyaka ophelileyo - 81%).

Olona phuculo luphawulekayo longezwe ngexesha lophuhliso lwe-1.17.x yesebe elingasentla:

  • Umyalelo wongeziwe Umda_req_ryry_run, eyenza imodi yokuqhuba isilingo, apho kungekho zithintelo ezisetyenzisiweyo kwisigxina sokusebenza kwesicelo (ngaphandle komda wezinga), kodwa iyaqhubeka ithathela ingqalelo inani lezicelo ezidlula imida kwimemori ekwabelwana ngayo;
  • Umyalelo wongeziwe Umda_conn_ryry_run, etshintsha imodyuli ye-ngx_http_limit_conn_modyuli kwimodyuli yokuvavanya, apho inani loxhulumaniso lingaphelelanga, kodwa lithathelwa ingqalelo;
  • Umyalelo owongeziweyo "ukulibaziseka_ukucothisa", ekuvumela ukuba wongeze ukulibaziseka kwizicelo ezingagunyaziswanga kunye nekhowudi yokuphendula ye-401 ukunciphisa ubunzulu bokuqikelela igama eliyimfihlo kunye nokukhusela ngokuchasene uhlaselo, ukulawula umlinganiselo wexesha lokwenziwa kwemisebenzi (uhlaselo lwexesha) xa ufikelela kwiisistim apho ukufikelela kulinganiselwe. inombolo yokuvula, isiphumo se-subquery okanye IJWT (JSON Web Token);
  • Inkxaso eyongeziweyo yeenguqu kwi "limit_rate" kunye ne "limit_rate_after" imiyalelo, kunye nakwi "proxy_upload_rate" kunye ne "proxy_download_rate" imiyalelo yemodyuli yomjelo;
  • Kumyalelo grpc_pass inkxaso eyongeziweyo yokusebenzisa uguqulo kwiparamitha echaza idilesi. Ukuba idilesi ibalulwe njengegama lesizinda, igama likhangelwa phakathi kwamaqela achaziweyo abancedisi, kwaye, ukuba ayifunyenwanga, kugqitywe ngokusetyenziswa komsombululi;
  • Iinguqu ezintsha zongezwa $proxy_protocol_server_addr ΠΈ $proxy_protocol_server_port, equlathe idilesi yomncedisi kunye nezibuko ezifunyenwe kwisihloko somthetho we PROXY;
  • Kwimodyuli ngx_stream_limit_conn_modyuli ukuguquguquka kongeziweyo $ limit_conn_status, egcina iziphumo zokunciphisa inani loqhagamshelo: PASSED, REJECTED okanye REJECTED_DRY_RUN;
  • Kwimodyuli ngx_http_limit_req_modyuli ukuguquguquka kongeziweyo $ limit_req_status, egcina iziphumo zokunqanda umlinganiselo wokufika kwezicelo: ZIDLULIWE, ZILIBAZEKILE, ZIKHANGILEYO, DELAYED_DRY_RUN okanye REJECTED_DRY_RUN;
  • Ngokungagqibekanga, imodyuli iyadityaniswa ngx_http_postpone_filter_modyuli;
  • Inkxaso eyongeziweyo yokuguqula amagama "indawo" iibhloko kusetyenziswa indlela ye-$r->internal_redirect() enikwe yitoliki eyakhelwe-ngaphakathi kaPerl. Le ndlela ngoku ibandakanya ukusetyenzwa kwe-URIs ngoonobumba abalekile;
  • Xa usebenzisa i-"upstream" yomyalelo kwibhloko yesethingi "ephezulu".hashiΒ»ukulungiselela ulungelelwaniso lomthwalo ngokubophelela umncedisi womxhasi, ukuba ukhankanya ixabiso elingenanto lesitshixo, imowudi yokulinganisa iyunifomu (engqukuva-robin) ngoku iyasebenza;
  • Inkxaso eyongeziweyo yokufowunela ioctl(FIONREAD) ukuba iyafumaneka ukunqanda ukufunda kuqhagamshelo olukhawulezayo ekuhambeni kwexesha.

umthombo: opennet.ru

Yongeza izimvo