Kuburitswa kwe nginx 1.19.7, njs 0.5.1 uye NGINX Unit 1.22.0

Bazi guru re nginx 1.19.7 rakabudiswa, mukati umo kuvandudzwa kwezvinhu zvitsva zvinopfuurira (mune chibvumirano chakatsigirwa chakagadzikana 1.18, chete shanduko dzine chokuita nekubviswa kwezvikanganiso zvakakomba uye kushaya simba kunoitwa).

Shanduko huru:

  • Kana basa revashandi rikabuda kunze kwekubatana kwemahara, nginx ikozvino inovhara kwete chete keepave connections, asiwo zvinongedzo zvakamirira kuti socket ivhare ("kunonoka kuvhara").
  • Kodhi yekubatanidza yekubatanidza muHTTP/2 iri pedyo neiyo HTTP/1.x kuita. Tsigiro yezvigadziro zvega "http2_recv_timeout", "http2_idle_timeout" uye "http2_max_requests" yakamiswa nekuda kwezvirongwa zvakajairika "keepalive_timeout" uye "keepalive_requests".
  • Zvirongwa zve "http2_max_field_size" uye "http2_max_header_size" zvabviswa uye "large_client_header_buffers" inofanira kushandiswa pachinzvimbo.

Panguva imwecheteyo, njs 0.5.1 yakaburitswa, muturikiri weJavaScript wenginx web server. Muturikiri we njs ano shandisa ECMAScript zviyero uye anobvumidza iwe kuwedzera nginx kugona kugadzirisa zvikumbiro uchishandisa zvinyorwa mukugadzirisa. Zvinyorwa zvinogona kushandiswa mufaira rekugadzirisa kutsanangura logic yepamusoro yekugadzirisa zvikumbiro, kugadzira zvigadziridzo, zvine simba kuunza mhinduro, kugadzirisa chikumbiro / mhinduro, kana kukurumidza kugadzira stubs kugadzirisa matambudziko mumawebhu maapplication.

Shanduro itsva inowedzera "js_header_filter" rairo, iyo inokubvumira kuti uise JavaScript basa rekusefa uye kushandura zvisizvo mhinduro misoro: js_import foo.js; nzvimbo / {js_header_filter foo.filter; proxy_pass http://127.0.0.1:8081/; } foo.js: function filter(r) {var cookies = r.headersOut['Set-Cookie']; var len = r.args.len ? Nhamba(r.args.len) : 0; r.headersOut['Set-Cookie'] = cookies.filter(v=>v.length > len); } kunze default {sefa};

Yakawedzerwawo ndiyo ngx.fetch() nzira, iyo inoshandisa iyo Fetch API, iyo inopa HTTP mutengi kushanda. Iyo nzira inotsigira kugadzirisa kwemuviri, misoro, buffer_size uye max_response_body_size sarudzo. The Response Response chinhu chinotsigira arrayBuffer(), bodyUsed, json(), headers, ok, redirect, status, statusText, text(), mhando uye url nzira, uye Header chinhu chinotsigira get(), getAll() uye ine() nzira . function fetch(r) {ngx.fetch('http://nginx.org/') .then(pindura => reply.text()) .then(body => r.return(200, body)) .catch (e => r.return(501, e.message)); }

Iwe unogona zvakare kucherechedza kuburitswa kweiyo NGINX Unit 1.22 application server, iyo inopa mhinduro yekushandisa webhu maapplication mumitauro yakasiyana-siyana yekuronga (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js uye Java). NGINX Unit inogona panguva imwe chete kumhanyisa akawanda maapplication mumitauro yakasiyana-siyana yekuronga, iyo yekutanga paramita inogona kuchinjwa zvine simba pasina kukosha kwekugadzirisa mafaera ekugadzirisa uye kutangazve. Iyo kodhi yakanyorwa muC uye yakagoverwa pasi peiyo Apache 2.0 rezinesi.

Kuburitswa kutsva kweNGINX Unit kwakanangana nekuvandudza kugadzikana, kuwedzera maturusi ekuyedza, nekugadzirisa tsikidzi. Mumapakeji akagadzirwa eLinux, mushandisi neboka pasi peiyo NGINX Unit inomhanya yakashandurwa. Panzvimbo pekusava nemunhu: hapana, maitiro zvino anomhanya pasi pemushandisi wega wega muchikwata chechikwata. Kuve nechokwadi chekuenderana neiyo Stream API yeServerRequest uye ServerResponse zvinhu kubva kuNode.js module. Iyo "nzira" sarudzo yePython application inobvumira akawanda madhairekitori kuti atsanangurwe.

Source: opennet.ru

Voeg