рд╕рд░реНрднрд░-рд╕рд╛рдЗрдб JavaScript рдкреНрд▓реЗрдЯрдлрд░реНрдо Node.js 20.0 рдЙрдкрд▓рдмреНрдз рдЫ

Node.js 20.0 рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╛рднрд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯрдорд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдЪрд▓рд╛рдЙрдиреЗ рдкреНрд▓реЗрдЯрдлрд░реНрдоред Node.js 20.0 рд▓рд╛рдИ рджреАрд░реНрдШрдХрд╛рд▓реАрди рд╕рдорд░реНрдерди рд╢рд╛рдЦрд╛рдХреЛ рд░реВрдкрдорд╛ рд╡рд░реНрдЧреАрдХреГрдд рдЧрд░рд┐рдПрдХреЛ рдЫ, рддрд░ рдпреЛ рд╕реНрдерд┐рддрд┐ рд╕реНрдерд┐рд░реАрдХрд░рдг рдкрдЫрд┐ рдорд╛рддреНрд░ рдЕрдХреНрдЯреЛрдмрд░рдорд╛ рддреЛрдХрд┐рдиреЗрдЫред Node.js 20.x рд▓рд╛рдИ рдЕрдкреНрд░рд┐рд▓ 30, 2026 рд╕рдореНрдо рд╕рдорд░реНрдерди рдЧрд░рд┐рдиреЗрдЫред Node.js 18.x рдХреЛ рдЕрдШрд┐рд▓реНрд▓реЛ LTS рд╢рд╛рдЦрд╛рдХреЛ рдорд░реНрдорддрд╕рдореНрднрд╛рд░ рдЕрдкреНрд░рд┐рд▓ 2025 рд╕рдореНрдо рд░ рдЕрдиреНрддрд┐рдо LTS рд╢рд╛рдЦрд╛ 16.x рдЕрдШрд┐рдХреЛ рд╕реЗрдкреНрдЯреЗрдореНрдмрд░ 2023 рд╕рдореНрдо рдЪрд▓реНрдиреЗрдЫред 14.x LTS рд╢рд╛рдЦрд╛ рдЕрдкреНрд░рд┐рд▓ 30 рдорд╛ рдмрдиреНрдж рд╣реБрдиреЗрдЫ, рд░ Node.js 19.x рд╕реНрдЯреЗрдЬрд┐рдЩ рд╢рд╛рдЦрд╛ рдЬреБрди 1st рдорд╛ рдмрдиреНрдж рд╣реБрдиреЗрдЫред

рдореБрдЦреНрдп рд╕реБрдзрд╛рд░рд╣рд░реВ:

  • V8 рдЗрдиреНрдЬрд┐рди рд╕рдВрд╕реНрдХрд░рдг 11.3 рдорд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░рд┐рдПрдХреЛ рдЫ, Chromium 113 рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдпреЛред Node.js 19 рд╢рд╛рдЦрд╛рдХреЛ рддреБрд▓рдирд╛рдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ, рдЬрд╕рд▓реЗ Chromium 107 рдЗрдиреНрдЬрд┐рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНтАНрдпреЛ, String.prototype.isWellFormed рд░ toWellFormed рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ, Array.prototype рд░ TypedArray рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред рдПрд░реЗ рд░ TypedArray рд╡рд╕реНрддреБрд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрджрд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рд┐рдзрд┐рд╣рд░реВ, RegExp рдорд╛ "v" рдЭрдгреНрдбрд╛, ArrayBuffer рд░рд┐рд╕рд╛рдЗрдЬ рдЧрд░реНрди рд░ SharedArrayBuffer рдХреЛ рдЖрдХрд╛рд░ рдмрдврд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди, WebAssembly рдорд╛ рдЯреЗрд▓ рд░рд┐рдХрд░реНрд╕рди (рдЯреЗрд▓-рдХрд▓)ред
  • рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдЕрдиреБрдорддрд┐ рдореЛрдбреЗрд▓ рд╕рдВрдпрдиреНрддреНрд░ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬрд╕рд▓реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рдХреНрд░рдордорд╛ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рд╕реАрдорд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдмреЗрд▓рд╛ "--рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ-рдЕрдиреБрдорддрд┐" рдлреНрд▓реНрдпрд╛рдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реЗрд░ рдЕрдиреБрдорддрд┐ рдореЛрдбреЗрд▓ рд╕рдорд░реНрдерди рд╕рдХреНрд╖рдо рдЧрд░рд┐рдПрдХреЛ рдЫред рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓реЗ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рднрд╛рдЧрд╣рд░реВрдорд╛ рд▓реЗрдЦреНрдиреЗ (--рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗ-fs-рд▓реЗрдЦрди) рд░ рдкрдвреНрди (--рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗ-fs-рдкрдвреНрдиреЗ) рдкрд╣реБрдБрдЪ рд╕реАрдорд┐рдд рдЧрд░реНрди рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ, рдмрд╛рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ (--рдЕрдиреБрдорддрд┐-рдмрдЪреНрдЪрд╛-рдкреНрд░рдХреНрд░рд┐рдпрд╛), рд░ред add-ons (-no-addons) ) рд░ рдереНрд░реЗрдбрд╣рд░реВ (--allow-worker)ред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, /tmp рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рд▓реЗрдЦреНрди рд░ /home/index.js рдлрд╛рдЗрд▓ рдкрдвреНрди рдЕрдиреБрдорддрд┐ рджрд┐рди, рддрдкрд╛рдИрдВрд▓реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: рдиреЛрдб тАФрдкреНрд░рд╛рдпреЛрдЧрд┐рдХ-рдЕрдиреБрдорддрд┐ тАФallow-fs-write=/tmp/ тАФallow-fs-read=/home /index.js index.js

    рдкрд╣реБрдБрдЪ рдЬрд╛рдБрдЪ рдЧрд░реНрди, рдпреЛ process.permission.has() рд╡рд┐рдзрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕реБрдЭрд╛рд╡ рджрд┐рдЗрдПрдХреЛ рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, "process.permission.has('fs.write',"/tmp/test")ред

  • ECMAScript External Module (ESM) рд╣реНрдпрд╛рдиреНрдбрд▓рд░рд╣рд░реВ "--experimental-loader" рд╡рд┐рдХрд▓реНрдк рдорд╛рд░реНрдлрдд рд▓реЛрдб рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН, рдЕрдм рдПрдЙрдЯрд╛ рдЫреБрдЯреНрдЯреИ рдереНрд░реЗрдбрдорд╛ рдЪрд▓реНрдЫрдиреН, рдореБрдЦреНрдп рдереНрд░реЗрдбрдмрд╛рдЯ рдЕрд▓рдЧ рдЧрд░реА, рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдХреЛрдб рд░ рд▓реЛрдб рдЧрд░рд┐рдПрдХрд╛ ESM рдореЛрдбреНрдпреБрд▓рд╣рд░реВрдХреЛ рдкреНрд░рддрд┐рдЪреНрдЫреЗрджрди рд╣рдЯрд╛рдПрд░ред рдмреНрд░рд╛рдЙрдЬрд░рд╣рд░реВ рдЬрд╕реНрддреИ, import.meta.resolve() рд╡рд┐рдзрд┐ рдЕрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрдмрд╛рдЯ рдмреЛрд▓рд╛рдЙрдБрджрд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдкрдорд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░рд┐рдиреНрдЫред Node.js рдХреЛ рдЕрд░реНрдХреЛ рд╢рд╛рдЦрд╛рд╣рд░реВ рдордзреНрдпреЗ рдПрдХрдорд╛, ESM рд▓реЛрдб рдЧрд░реНрдиреЗ рд╕рдорд░реНрдердирд▓рд╛рдИ рд╕реНрдерд┐рд░ рдХреНрд╖рдорддрд╛рд╣рд░реВрдХреЛ рд╢реНрд░реЗрдгреАрдорд╛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдиреЗ рдпреЛрдЬрдирд╛ рдЫред
  • рдореЛрдбреНрдпреБрд▓ рдиреЛрдб: test (test_runner), рдЬрд╛рднрд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯрдорд╛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд░ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рд╣реЛ рдЬрд╕рд▓реЗ TAP (Test Anything Protocol) рдврд╛рдБрдЪрд╛рдорд╛ рдкрд░рд┐рдгрд╛рдорд╣рд░реВ рдлрд░реНрдХрд╛рдЙрдБрдЫ, рд╕реНрдерд┐рд░ рдмрдирд╛рдЗрдПрдХреЛ рдЫред
  • рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐ рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдПрдЙрдЯрд╛ рдЫреБрдЯреНрдЯреИ рд╡рд┐рдХрд╛рд╕ рдЯреЛрд▓реА рдЧрдарди рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╕рд▓реЗ рдирдпрд╛рдБ рд╢рд╛рдЦрд╛ рддрдпрд╛рд░ рдЧрд░реНрджрд╛, URL рдкрд╛рд░реНрд╕рд┐рдЩ, fetch() рд░ EventTarget рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рд░рдирдЯрд╛рдЗрдо рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВрд▓рд╛рдИ рдЧрддрд┐ рджрд┐рди рдХрд╛рдо рдЧрд░реНрдпреЛред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, EventTarget рдкреНрд░рд╛рд░рдореНрднрд┐рдХрд░рдгрдХреЛ рдУрднрд░рд╣реЗрдб рдЖрдзрд╛ рдЧрд░рд┐рдПрдХреЛ рдЫ, URL.canParse() рд╡рд┐рдзрд┐рдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╕реБрдзрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд░ рдЯрд╛рдЗрдорд░рд╣рд░реВрдХреЛ рджрдХреНрд╖рддрд╛ рд╕реБрдзрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫред рдпрд╕рдорд╛ C++ рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди URL рдкрд╛рд░реНрд╕рд░, Ada 2.0 рдХреЛ рд░рд┐рд▓реАрдЬ рдкрдирд┐ рд╕рдорд╛рд╡реЗрд╢ рдЫред
  • рдПрдХрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдлрд╛рдЗрд▓ (SEA, рдПрдХрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпреЛрдЧреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ) рдХреЛ рд░реВрдкрдорд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдбреЗрд▓рд┐рднрд░ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдХреНрд╖рдорддрд╛рдХреЛ рд╡рд┐рдХрд╛рд╕ рдЬрд╛рд░реА рдЫред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдлрд╛рдЗрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЕрдм JSON рдврд╛рдБрдЪрд╛рдорд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓рдмрд╛рдЯ рдЙрддреНрдкрдиреНрди рдмреНрд▓рдм рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рдЬрд╛рднрд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╛рдЗрд▓ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдирдХреЛ рд╕рдЯреНрдЯрд╛)ред
  • рд╡реЗрдм рдХреНрд░рд┐рдкреНрдЯреЛ API рдХреЛ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдмрд╛рдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд╕рд╛рдердорд╛ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдЕрдиреБрдХреВрд▓рддрд╛ред
  • ARM64 рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ Windows рдХреЛ рд▓рд╛рдЧрд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред
  • рд╕реНрдЯреНрдпрд╛рдиреНрдб-рдЕрд▓реЛрди WebAssembly рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди WASI (WebAssembly System Interface) рд╡рд┐рд╕реНрддрд╛рд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердирдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЬрд╛рд░реА рдЫред WASI рд╕рдорд░реНрдерди рд╕рдХреНрд╖рдо рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реЗрд╖ рдХрдорд╛рдгреНрдб рд▓рд╛рдЗрди рдлреНрд▓реНрдпрд╛рдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣рдЯрд╛рдЗрдПрдХреЛ рдЫред

Node.js рдкреНрд▓реЗрдЯрдлрд░реНрдо рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд╕рд░реНрднрд░-рд╕рд╛рдЗрдб рд╕рдорд░реНрдердирдХреЛ рд▓рд╛рдЧрд┐, рд░ рд╕рд╛рдзрд╛рд░рдг рдЧреНрд░рд╛рд╣рдХ рд░ рд╕рд░реНрднрд░ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рджреБрд╡реИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред Node.js рдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрди, рдореЛрдбреНрдпреБрд▓рд╣рд░реВрдХреЛ рдареВрд▓реЛ рд╕рдЩреНрдХрд▓рди рддрдпрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рдорд╛ рддрдкрд╛рдИрдВрд▓реЗ HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 рд╕рд░реНрднрд░рд╣рд░реВ рд░ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВ, рдПрдХреАрдХрд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ рдореЛрдбреНрдпреБрд▓рд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рдореЛрдбреНрдпреБрд▓рд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╡рд┐рднрд┐рдиреНрди рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХрд╣рд░реВ, WebSocket рд░ Ajax рд╣реНрдпрд╛рдиреНрдбрд▓рд░рд╣рд░реВ, DBMS (MySQL, PostgreSQL, SQLite, MongoDB), рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЗрдиреНрдЬрд┐рдирд╣рд░реВ, CSS рдЗрдиреНрдЬрд┐рдирд╣рд░реВ, рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдорд╣рд░реВ рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВ (OAuth), XML рдкрд╛рд░реНрд╕рд░рд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдорд╛ рдХрдиреЗрдХреНрдЯрд░рд╣рд░реВред

рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛рдорд╛ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рд╣реНрдпрд╛рдиреНрдбрд▓ рдЧрд░реНрди, Node.js рд▓реЗ рдЧреИрд░-рдмреНрд▓рдХрд┐рдЩ рдШрдЯрдирд╛ рдкреНрд░рд╢реЛрдзрди рд░ рдХрд▓рдмреНрдпрд╛рдХ рд╣реНрдпрд╛рдиреНрдбрд▓рд░рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдиреЗ рдЖрдзрд╛рд░рдорд╛ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЛрдбреЗрд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред рдорд▓реНрдЯрд┐рдкреНрд▓реЗрдХреНрд╕рд┐рдЩ рдЬрдбрд╛рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерд┐рдд рд╡рд┐рдзрд┐рд╣рд░реВрдорд╛ epoll, kqueue, /dev/poll, рд░ рдЪрдпрди рд╕рдорд╛рд╡реЗрд╢ рдЫред рдЬрдбрд╛рди рдорд▓реНрдЯрд┐рдкреНрд▓реЗрдХреНрд╕рд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐, libuv рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдЬреБрди рдпреБрдирд┐рдХреНрд╕ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ libev рд░ Windows рдорд╛ IOCP рдорд╛ рдПрдб-рдЕрди рд╣реЛред libeio рдкреБрд╕реНрддрдХрд╛рд▓рдп рдереНрд░реЗрдб рдкреВрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рд░ c-ares рдПрдХ рдЧреИрд░-рдмреНрд▓рдХрд┐рдЩ рдореЛрдбрдорд╛ DNS рдкреНрд░рд╢реНрдирд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдПрдХреАрдХреГрдд рдЫред рд╕рдмреИ рдкреНрд░рдгрд╛рд▓реА рдХрд▓рд╣рд░реВ рдЬрд╕рд▓реЗ рдмреНрд▓рдХрд┐рдЩ рдирд┐рдореНрддреНрдпрд╛рдЙрдБрдЫ рдереНрд░реЗрдб рдкреВрд▓ рднрд┐рддреНрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░рд┐рдиреНрдЫ рд░ рддреНрдпрд╕рдкрдЫрд┐, рд╕рд┐рдЧреНрдирд▓ рд╣реНрдпрд╛рдиреНрдбрд▓рд░рд╣рд░реВ рдЬрд╕реНрддреИ, рддрд┐рдиреАрд╣рд░реВрдХреЛ рдХрд╛рдордХреЛ рдирддрд┐рдЬрд╛ рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдк рдорд╛рд░реНрдлрдд рдлрд┐рд░реНрддрд╛ рдкрд╛рд░реНрдЫред рдЬрд╛рднрд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдбрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧреБрдЧрд▓ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд V8 рдЗрдиреНрдЬрд┐рдирдХреЛ рдкреНрд░рдпреЛрдЧ рдорд╛рд░реНрдлрдд рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ (рдЕрддрд┐рд░рд┐рдХреНрдд, рдорд╛рдЗрдХреНрд░реЛрд╕рдлреНрдЯрд▓реЗ рдЪрдХреНрд░-рдХреЛрд░ рдЗрдиреНрдЬрд┐рдирдХреЛ рд╕рд╛рде Node.js рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд╛рд╕ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫ)ред

рдпрд╕рдХреЛ рдореВрд▓рдорд╛, Node.js Perl AnyEvent, Ruby Event Mechine, Python Twisted рдлреНрд░реЗрдорд╡рд░реНрдХ рд░ Tcl рдорд╛ рдШрдЯрдирд╛рд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд╕рдБрдЧ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ рдЫ, рддрд░ Node.js рдорд╛ рдШрдЯрдирд╛ рд▓реБрдк рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рдмрд╛рдЯ рд▓реБрдХреЗрдХреЛ рдЫ рд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрдорд╛ рдШрдЯрдирд╛ рдкреНрд░рд╢реЛрдзрдирд╕рдБрдЧ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ рдЫред рдмреНрд░рд╛рдЙрдЬрд░рдорд╛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫред node.js рдХрд╛ рд▓рд╛рдЧрд┐ рдЖрд╡реЗрджрдирд╣рд░реВ рд▓реЗрдЦреНрджрд╛, рдШрдЯрдирд╛-рд╕рдВрдЪрд╛рд▓рд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩрдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рд╣рд░реВрд▓рд╛рдИ рдзреНрдпрд╛рдирдорд╛ рд░рд╛рдЦреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, "var result = db.query("select..");" рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ред рдХрд╛рдордХреЛ рд╕рдорд╛рдкрди рд░ рдкрд░рд┐рдгрд╛рдорд╣рд░реВрдХреЛ рдкрдЫрд┐рдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдБрджреИ, Node.js рд▓реЗ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд╕рд┐рджреНрдзрд╛рдиреНрдд рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ, рдЕрд░реНрдерд╛рддреНред рдХреЛрдбрд▓рд╛рдИ "db.query("select..", function (рдирддрд┐рдЬрд╛) {рдирддрд┐рдЬрд╛ рдкреНрд░рд╢реЛрдзрди});" рдорд╛ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рдорд╛ рдирд┐рдпрдиреНрддреНрд░рдг рддреБрд░реБрдиреНрддреИ рдЕрд░реНрдХреЛ рдХреЛрдбрдорд╛ рдЬрд╛рдиреЗрдЫ, рд░ рдбрд╛рдЯрд╛ рдЖрдЗрдкреБрдЧреНрджрд╛ рдХреНрд╡реЗрд░реА рдкрд░рд┐рдгрд╛рдорд▓рд╛рдИ рдкреНрд░рд╢реЛрдзрди рдЧрд░рд┐рдиреЗрдЫред

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди