nginx 1.21.2 рдЖрдгрд┐ njs 0.6.2 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

nginx 1.21.2 рдЪреА рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рдЬрд╛рд░реА рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдирд╡реАрди рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдЪрд╛ рд╡рд┐рдХрд╛рд╕ рдЪрд╛рд▓реВ рдЖрд╣реЗ (рд╕рдорд╛рдВрддрд░ рд╕рдорд░реНрдерд┐рдд рд╕реНрдерд┐рд░ рд╢рд╛рдЦрд╛ 1.20 рдордзреНрдпреЗ, рдХреЗрд╡рд│ рдЧрдВрднреАрд░ рддреНрд░реБрдЯреА рдЖрдгрд┐ рдЕрд╕реБрд░рдХреНрд╖рд╛ рджреВрд░ рдХрд░рдгреНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдмрджрд▓ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд).

рдореБрдЦреНрдп рдмрджрд▓:

  • HTTP/1.0 рд╡рд┐рдирдВрддреНрдпрд╛ рдЬреНрдпрд╛рдд тАЬрд╣рд╕реНрддрд╛рдВрддрд░рдг-рдПрдирдХреЛрдбрд┐рдВрдЧтАЭ HTTP рд╢реАрд░реНрд╖рд▓реЗрдЦ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ (HTTP/1.1 рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ рджрд┐рд╕реВрди рдпреЗрддреЗ).
  • рдирд┐рд░реНрдпрд╛рдд рд╕рд╛рдпрдлрд░ рд╕реВрдЯрд╕рд╛рдареА рд╕рдорд░реНрдерди рдмрдВрдж рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.
  • OpenSSL 3.0 рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╣ рд╕реБрд╕рдВрдЧрддрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реА рдЬрд╛рддреЗ.
  • рдореЗрд▓ рдкреНрд░реЙрдХреНрд╕реА рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ тАЬAuth-SSL-ProtocolтАЭ рдЖрдгрд┐ тАЬAuth-SSL-CipherтАЭ рд╢реАрд░реНрд╖рд▓реЗрдЦрд╛рдВрдЪреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рд▓рд╛рдЧреВ рдХреЗрд▓реЗ.
  • рд╡рд┐рдирдВрддреА рдмреЙрдбреА рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ API рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдбреЗрдЯрд╛рдЪреНрдпрд╛ рдмрдлрд░рд┐рдВрдЧрд▓рд╛ рдЕрдиреБрдорддреА рджреЗрддреЗ.
  • рд╕рд░реНрд╡реНрд╣рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЗ рд▓реЛрдб рдХрд░рддрд╛рдирд╛, OpenSSL 1.1.0 рдкрд╛рд╕реВрди рд╕рдорд░реНрдерд┐рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдЖрдгрд┐ ssl_ciphers рдирд┐рд░реНрджреЗрд╢рд╛рдордзреНрдпреЗ тАЬ@SECLEVEL=NтАЭ рдкреЕрд░рд╛рдореАрдЯрд░рджреНрд╡рд╛рд░реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрддрд░рд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ.
  • рд╕реНрдЯреНрд░реАрдо рдЖрдгрд┐ gRPC рдореЙрдбреНрдпреВрд▓реНрд╕рдордзреНрдпреЗ рдмреЕрдХрдПрдВрдбреНрд╕рд╕рд╛рдареА SSL рдХрдиреЗрдХреНрд╢рди рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛ рдЙрджреНрднрд╡рд▓реЗрд▓реЗ рд╕реНрдерд┐рд░ рд╣рдБрдЧ.
  • HTTP/2 рд╡рд╛рдкрд░рддрд╛рдирд╛ рд╡рд┐рдирдВрддреАрдЪрд╛ рдореБрдЦреНрдп рднрд╛рдЧ рдбрд┐рд╕реНрдХрд╡рд░ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреА рд╕рдорд╕реНрдпрд╛, рд╡рд┐рдирдВрддреАрдордзреНрдпреЗ "рд╕рд╛рдордЧреНрд░реА-рд▓рд╛рдВрдмреА" рд╢реАрд░реНрд╖рд▓реЗрдЦрд╛рдЪреНрдпрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рддреАрдд, рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реА рдЖрд╣реЗ.

рддреНрдпрд╛рдЪ рд╡реЗрд│реА, njs 0.6.2, nginx рд╡реЗрдм рд╕рд░реНрд╡реНрд╣рд░рд╕рд╛рдареА JavaScript рджреБрднрд╛рд╖реА рд░рд┐рд▓реАрдЭ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реЗ. njs рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯрд░ ECMAScript рдорд╛рдирдХреЗ рд▓рд╛рдЧреВ рдХрд░рддреЛ рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреАрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░реВрди рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдЪреА nginx рдХреНрд╖рдорддрд╛ рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ. рд╡рд┐рдирдВрддреНрдпрд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЧрддрд┐рдорд╛рдирдкрдгреЗ рдкреНрд░рддрд┐рд╕рд╛рдж рдирд┐рд░реНрдорд╛рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рд╡рд┐рдирдВрддреА/рдкреНрд░рддрд┐рд╕рд╛рджрд╛рдд рдмрджрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рдВрд╡рд╛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдордзреАрд▓ рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрдЯрдХрди рд╕реНрдЯрдм рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рдЧрдд рддрд░реНрдХрд╢рд╛рд╕реНрддреНрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддрд╛рдд. рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ, Promise.all(), Promise.allSettled(), Promise.any() рдЖрдгрд┐ Promise.race() рдкрджреНрдзрддреА рдкреНрд░реЙрдорд┐рд╕ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдордзреНрдпреЗ рдЬреЛрдбрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд. AggregateError рдСрдмреНрдЬреЗрдХреНрдЯрд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛