nginx 1.17.6, njs 0.3.7 เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เดฑเดฟเดฒเต€เดธเต

เดฐเต‚เดชเต€เด•เดฐเดฟเดšเตเดšเต เด…เดชเตเดธเตเดŸเตเดฐเต€เด‚ เดฑเดฟเดฒเต€เดธเต nginx 1.17.6, เด…เดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดชเตเดคเดฟเดฏ เด•เดดเดฟเดตเตเด•เดณเตเดŸเต† เดตเดฟเด•เดธเดจเด‚ เดคเตเดŸเดฐเตเดจเตเดจเต (เดธเดฎเดพเดจเตเดคเดฐเดฎเดพเดฏเดฟ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจ เดธเตเดฅเดฟเดฐเดค เดถเดพเด– 1.16 เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดชเดฟเดถเด•เตเด•เดณเตเด‚ เด•เต‡เดŸเตเดชเดพเดŸเตเด•เดณเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เดตเดฐเตเดคเตเดคเตเดจเตเดจเดคเต).

เดชเตเดฐเดงเดพเดจ เดฎเดพเดฑเตเดฑเด‚:

  • เดชเตเดคเดฟเดฏ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดšเต‡เตผเดคเตเดคเต $proxy_protocol_server_addr ะธ $proxy_protocol_server_port, PROXY เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ เดนเต†เดกเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเดšเตเดš เดธเต†เตผเดตเตผ เดตเดฟเดฒเดพเดธเดตเตเด‚ เดชเต‹เตผเดŸเตเดŸเตเด‚ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต;
  • เดจเดฟเตผเดฆเตเดฆเต‡เดถเด‚ เดšเต‡เตผเดคเตเดคเต limit_conn_dry_run, ะฟะตั€ะตะฒะพะดัั‰ะฐั ะผะพะดัƒะปัŒ ngx_http_limit_conn_module ะฒ ั€ะตะถะธะผ ะฟั€ะพะฑะฝะพะณะพ ะทะฐะฟัƒัะบะฐ, ะฟั€ะธ ะบะพั‚ะพั€ะพะผ ั‡ะธัะปะพ ัะพะตะดะธะฝะตะฝะธะน ะฝะต ะพะณั€ะฐะฝะธั‡ะธะฒะฐะตั‚ัั, ะฝะพ ัƒั‡ะธั‚ั‹ะฒะฐะตั‚ัั.
  • เดฎเตŠเดกเตเดฏเต‚เดณเดฟเตฝ ngx_stream_limit_conn_module ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะตั€ะตะผะตะฝะฝะฐั $limit_conn_status, ะบะพั‚ะพั€ะฐั ั…ั€ะฐะฝะธั‚ ั€ะตะทัƒะปัŒั‚ะฐั‚ ะพะณั€ะฐะฝะธั‡ะตะฝะธั ั‡ะธัะปะฐ ัะพะตะดะธะฝะตะฝะธะน: PASSED, REJECTED ะธะปะธ REJECTED_DRY_RUN;
  • เดฎเตŠเดกเตเดฏเต‚เดณเดฟเตฝ ngx_http_limit_req_module ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะตั€ะตะผะตะฝะฝะฐั $limit_req_status, ะบะพั‚ะพั€ะฐั ั…ั€ะฐะฝะธั‚ ั€ะตะทัƒะปัŒั‚ะฐั‚ ะพะณั€ะฐะฝะธั‡ะตะฝะธั ัะบะพั€ะพัั‚ะธ ะฟะพัั‚ัƒะฟะปะตะฝะธั ะทะฐะฟั€ะพัะพะฒ: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN ะธะปะธ REJECTED_DRY_RUN.

เด•เต‚เดŸเดพเดคเต†, เด‡เดคเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเดพเดฃเต เดฑเดฟเดฒเต€เดธเต njs 0.3.7, nginx เดตเต†เดฌเต เดธเต†เตผเดตเดฑเดฟเดจเดพเดฏเตเดณเตเดณ เด’เดฐเต JavaScript เดตเตเดฏเดพเด–เตเดฏเดพเดคเดพเดตเต. njs เดตเตเดฏเดพเด–เตเดฏเดพเดคเดพเดตเต ECMAScript เดฎเดพเดจเดฆเดฃเตเดกเด™เตเด™เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเด•เดฏเตเด‚ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเดฟเดฒเต† เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ nginx-เดจเตเดฑเต† เด•เดดเดฟเดตเต เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดšเดฒเดจเดพเดคเตเดฎเด•เดฎเดพเดฏเดฟ เด’เดฐเต เดชเตเดฐเดคเดฟเด•เดฐเดฃเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจ/เดชเตเดฐเดคเดฟเด•เดฐเดฃเด‚ เดชเดฐเดฟเดทเตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเต†เดฌเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเดฒเต† เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดธเตเดฑเตเดฑเดฌเตเด•เตพ เดตเต‡เด—เดคเตเดคเดฟเตฝ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดตเดฟเดชเตเดฒเดฎเดพเดฏ เดฒเต‹เดœเดฟเด•เต เดจเดฟเตผเดตเดšเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด’เดฐเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเดฒเดฟเตฝ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚.

ะ’ ะฝะพะฒะพะผ ะฒั‹ะฟัƒัะบะต ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะผะตั‚ะพะดะพะฒ Object.assign() ะธ Array.prototype.copyWithin(). ะ’ console.time() ะพะฑะตัะฟะตั‡ะตะฝะฐ ะฒะพะทะผะพะถะฝะพัั‚ัŒ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธั ะผะตั‚ะพะบ. ะŸะตั€ะตั€ะฐะฑะพั‚ะฐะฝ ะบะพะด ะดะปั ะฒะทะฐะธะผะพะดะตะนัั‚ะฒะธั ัะพ ะฒะฝะตัˆะฝะธะผะธ ะพะฑัŠะตะบั‚ะฐะผะธ ะธ ะพะฑั€ะฐะฑะพั‚ะบะธ ะดะฐะฝะฝั‹ั… ะฒ ั„ะพั€ะผะฐั‚ะต JSON. ะ˜ะท CLI ัƒะดะฐะปั‘ะฝ ะฒั‹ะทะพะฒ console.help().

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•