nginx 1.18.0 թողարկում

Մեկ տարի զարգացումից հետո ներկայացված է բարձր արդյունավետությամբ HTTP սերվերի և բազմապրոտոկոլի պրոքսի սերվերի նոր կայուն մասնաճյուղ nginx 1.18.0, որը կլանել է հիմնական ճյուղի ներսում կուտակված փոփոխությունները 1.17.x. Հետագայում կայուն ճյուղի 1.18-ի բոլոր փոփոխությունները կապված կլինեն լուրջ սխալների և խոցելիության վերացման հետ: Շուտով կձևավորվի nginx 1.19-ի հիմնական մասնաճյուղը, որի շրջանակներում կշարունակվի նոր հնարավորությունների զարգացումը։ Սովորական օգտատերերի համար, ովքեր երրորդ կողմի մոդուլների հետ համատեղելիություն ապահովելու խնդիր չունեն, առաջարկվում է օգտագործել հիմնական մասնաճյուղը, որի հիման վրա երեք ամիսը մեկ ձևավորվում են Nginx Plus առևտրային արտադրանքի թողարկումները:

Ըստ ապրիլյան հաշվետվություն Netcraft nginx-ն օգտագործվում է բոլոր ակտիվ կայքերի 19.56%-ում (մեկ տարի առաջ՝ 20.73%, երկու տարի առաջ՝ 21.02%), ինչը համապատասխանում է այս կատեգորիայի հանրաճանաչության երկրորդ տեղին (Apache-ի մասնաբաժինը համապատասխանում է 27.64%, Google-ին՝ 10.03%, Microsoft-ին։ IIS - 4.77%) . Միևնույն ժամանակ, բոլոր կայքերը դիտարկելիս nginx-ը պահպանում է իր առաջատարությունը և զբաղեցնում է շուկայի 36.91%-ը (մեկ տարի առաջ՝ 27.52%), մինչդեռ Apache-ի մասնաբաժինը համապատասխանում է 24.73%-ին, Microsoft IIS-ին՝ 12.85%-ին, Google-ին՝ 3.42%-ին։

Աշխարհի միլիոնավոր ամենաշատ այցելվող կայքերի մեջ nginx-ի մասնաբաժինը կազմում է 25.54% (մեկ տարի առաջ՝ 26.22%, երկու տարի առաջ՝ 23.76%)։ Ներկայումս Nginx-ում աշխատում է մոտ 459 միլիոն կայք (մեկ տարի առաջ՝ 397 միլիոն)։ Ըստ տրված W3Techs nginx-ն օգտագործվում է միլիոնավոր ամենաշատ այցելվող կայքերից 31.9%-ում, անցյալ տարվա ապրիլին այդ ցուցանիշը կազմել է 41.8%, նախորդ տարի՝ 38% (անկումը բացատրվում է Cloudflare http սերվերի առանձին հաշվառման անցումով): Apache-ի մասնաբաժինը տարվա ընթացքում իջել է 43.6%-ից մինչև 38.9%, իսկ Microsoft IIS-ի մասնաբաժինը 8.6%-ից մինչև 8.3%: Ռուսաստանում nginx օգտագործվում է ամենաշատ այցելվող կայքերի 78.9%-ի վրա (մեկ տարի առաջ՝ 81%)։

Ամենաուշագրավ բարելավումները, որոնք ավելացվել են 1.17.x հոսանքին հակառակ ճյուղի մշակման ընթացքում.

  • Հրահանգն ավելացված է limit_req_dry_run, որն ակտիվացնում է փորձնական գործարկման ռեժիմը, որի դեպքում հարցումների մշակման ինտենսիվության սահմանափակումներ չեն կիրառվում (առանց արագության սահմանաչափի), սակայն շարունակում է հաշվի առնել ընդհանուր հիշողության սահմանաչափերը գերազանցող հարցումների քանակը.
  • Հրահանգն ավելացված է limit_conn_dry_run, որը միացնում է ngx_http_limit_conn_module մոդուլը թեստային գործարկման ռեժիմի, որի դեպքում կապերի քանակը սահմանափակված չէ, այլ հաշվի է առնվում;
  • Ավելացված հրահանգ»author_delay«, որը թույլ է տալիս ուշացում ավելացնել չարտոնված հարցումներին 401 պատասխանի կոդով՝ նվազեցնելու գաղտնաբառի գուշակության ինտենսիվությունը և պաշտպանվելու համար։ գրոհներ, շահարկելով գործողությունների կատարման ժամանակի չափումը (ժամանակային հարձակումը), երբ մուտք գործեք համակարգեր, որոնց մուտքը սահմանափակ է գաղտնաբառը, ենթհարցման արդյունք կամ Ջ.Վ.Տ. (JSON Web Token);
  • Ավելացվել է փոփոխականների աջակցություն «limit_rate» և «limit_rate_after» հրահանգներում, ինչպես նաև հոսքային մոդուլի «proxy_upload_rate» և «proxy_download_rate» հրահանգներում.
  • Հրահանգում grpc_pass ավելացրել է աջակցություն՝ հասցե սահմանող պարամետրում փոփոխական օգտագործելու համար: Եթե ​​հասցեն նշված է որպես տիրույթի անուն, անունը որոնվում է նկարագրված սերվերների խմբերի մեջ և, եթե չի գտնվել, ապա որոշվում է լուծիչի միջոցով.
  • Ավելացվել են նոր փոփոխականներ $proxy_protocol_server_addr и $proxy_protocol_server_port, որոնք պարունակում են PROXY արձանագրության վերնագրից ստացված սերվերի հասցեն և պորտը;
  • Մոդուլում ngx_stream_limit_conn_module ավելացված փոփոխական $limit_conn_status, որը պահպանում է միացումների քանակի սահմանափակման արդյունքը.
  • Մոդուլում ngx_http_limit_req_module ավելացված փոփոխական $limit_req_status, որը պահպանում է հարցումների ժամանման արագության սահմանափակման արդյունքը.
  • Լռելյայնորեն, մոդուլը հավաքվում է ngx_http_postpone_filter_module;
  • Ավելացվեց «տեղորոշման» անվանումով բլոկների փոխարկման աջակցություն՝ օգտագործելով $r->internal_redirect() մեթոդը, որը տրամադրվում է ներկառուցված Perl թարգմանչի կողմից: Այս մեթոդն այժմ ներառում է URI-ների մշակում փախած նիշերով.
  • Երբ օգտագործում եք «վերընթաց» հրահանգը «վերև» կարգավորումների բլոկումմանրել» հաճախորդ-սերվեր կապակցմամբ բեռի հավասարակշռումը կազմակերպելու համար, եթե դուք նշում եք դատարկ բանալի արժեքը, այժմ ակտիվացված է հավասարաչափ հավասարակշռման ռեժիմը (կլոր շրջան);
  • Ավելացվել է աջակցություն ioctl (FIONREAD) զանգահարելու համար, եթե առկա է, ժամանակի ընթացքում արագ կապից կարդալուց խուսափելու համար:

Source: opennet.ru

Добавить комментарий