เบเบฒเบ™เบ›เปˆเบญเบ JavaScript เบ‚เป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบต Node.js 14.0

เป„เบ”เป‰เบˆเบฑเบ”เบ‚เบถเป‰เบ™ เบ›เปˆเบญเบเบ•เบปเบง Node.js 14.0, เป€เบงเบ—เบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป€เบ„เบทเบญเบ‚เปˆเบฒเบเปƒเบ™ JavaScript. Node.js 14.0 เป€เบ›เบฑเบ™เบชเบฒเบ‚เบฒเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป„เบฅเบเบฐเบเบฒเบง, เปเบ•เปˆเบชเบฐเบ–เบฒเบ™เบฐเบ™เบตเป‰เบˆเบฐเบ–เบทเบเบกเบญเบšเบซเบกเบฒเบเบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เป€เบ”เบทเบญเบ™เบ•เบธเบฅเบฒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบชเบฐเบ–เบฝเบ™เบฅเบฐเบžเบฒเบš. Node.js 14.0 เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹ เบˆเบปเบ™เบฎเบญเบ”เป€เบ”เบทเบญเบ™เป€เบกเบชเบฒ 2023. เบเบฒเบ™เบšเบณเบฅเบธเบ‡เบฎเบฑเบเบชเบฒเบชเบฒเบ‚เบฒ LTS เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบ‚เบญเบ‡ Node.js 12.0 เบˆเบฐเปเบเปˆเบเบฒเบงเป€เบ–เบดเบ‡เป€เบ”เบทเบญเบ™เป€เบกเบชเบฒ 2022, เปเบฅเบฐเบ›เบตเบเปˆเบญเบ™เบชเบฒเบ‚เบฒ LTS เบชเบธเบ”เบ—เป‰เบฒเบ 10.0 เบˆเบปเบ™เป€เบ–เบดเบ‡เป€เบ”เบทเบญเบ™เป€เบกเบชเบฒ 2021. เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเบฒเบ‚เบฒ 13.x เบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เปƒเบ™เป€เบ”เบทเบญเบ™เบกเบดเบ–เบธเบ™เบฒเบ›เบตเบ™เบตเป‰.

เบ•เบปเป‰เบ™โ€‹เบ•เป เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡:

  • เบ„เบงเบฒเบกโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบชเป‰เบฒเบ‡โ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบšเบดเบ™โ€‹เบซเบผเบทโ€‹เบ•เบฒเบกโ€‹เบเบฒเบ™โ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹เบ‚เบญเบ‡โ€‹เป€เบซเบ”โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เบ–เบฝเบ™โ€‹เบฅเบฐโ€‹เบžเบฒเบšโ€‹ เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบเบฒเบ™เบงเบดเบ™เบดเบ”เป„เบช, เป€เบŠเบดเปˆเบ‡เบชเบฐเปเบ”เบ‡เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบŠเปˆเบงเบเบงเบดเบ™เบดเบ”เป„เบชเบšเบฑเบ™เบซเบฒเป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เบ‚เบฑเบ”เบ‚เป‰เบญเบ‡, เบเบฒเบ™เป€เบชเบทเปˆเบญเบกเบชเบฐเบžเบฒเบšเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš, เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบผเบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบเบฒเบ™เป‚เบซเบผเบ” CPU เบซเบ™เบฑเบ, เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบšเปเปˆเบ„เบฒเบ”เบ„เบดเบ”, เปเบฅเบฐเบญเบทเปˆเบ™เป†.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš API เบ—เบปเบ”เบฅเบญเบ‡ Async Local Storage เบ”เป‰เบงเบเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเป‰เบญเบ‡เบฎเบฝเบ™ AsyncLocalStorage, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบชเบฐเบ–เบฒเบ™เบฐ asynchronous เบเบฑเบšเบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เป‚เบ—เบ„เบทเบ™เปเบฅเบฐเบชเบฑเบ™เบเบฒ. AsyncLocalStorage เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป€เบงเบฑเบšเป„เบŠเบ•เปŒเบเปเบฒเบฅเบฑเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™, reminiscent เบ‚เบญเบ‡ thread-local storage เปƒเบ™เบžเบฒเบชเบฒเบญเบทเปˆเบ™.
  • เบฅเบถเบšเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบทเบญเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบปเบ”เบฅเบญเบ‡เปƒเบ™เป€เบงเบฅเบฒเป‚เบซเบผเบ” เป‚เบกเบ”เบนเบ™ ECMAScript 6 เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปเบฅเบฐเบชเบปเปˆเบ‡เบญเบญเบเป‚เบ”เบเปƒเบŠเป‰เปƒเบšเบฅเบฒเบเบ‡เบฒเบ™เบเบฒเบ™เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเปเบฅเบฐเบชเบปเปˆเบ‡เบญเบญเบ. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เป‚เบกเบ”เบนเบ™ ESM เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบเบฑเบ‡เบ„เบปเบ‡เป€เบ›เบฑเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡.
  • เบญเบฑเบšเป€เบ”เบ”เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ V8 เป€เบ›เบฑเบ™เบฅเบธเป‰เบ™ 8.1 (1, 2, 3), เป€เบŠเบดเปˆเบ‡เบฅเบงเบกเบกเบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเปƒเบซเบกเปˆเปเบฅเบฐเบฅเบฑเบเบชเบฐเบ™เบฐเบ•เปˆเบฒเบ‡เป†เป€เบŠเบฑเปˆเบ™: เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ concatenation เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™เปƒเบซเบกเปˆ "???" (เบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ–เป‰เบฒ operand เบŠเป‰เบฒเบเปเบกเปˆเบ™ NULL เบซเบผเบทเบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”, เปเบฅเบฐเปƒเบ™เบ—เบฒเบ‡เบเบฑเบšเบเบฑเบ™), เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ "?." เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ•เปˆเบญเบ‡เป‚เบชเป‰เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบซเบผเบทเบเบฒเบ™เป‚เบ— (เบ•เบปเบงเบขเปˆเบฒเบ‡, "db?.user?.name?.length" เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบเบงเบ”เบชเบญเบšเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™), เบงเบดเบ—เบตเบเบฒเบ™ Intl.DisplayName เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบŠเบทเปˆเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™, เปเบฅเบฐเบญเบทเปˆเบ™เป†.
  • เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เบญเบ‡ Stream API เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เป€เบžเบทเปˆเบญเปเบ™เปƒเบชเปˆเบ›เบฑเบšเบ›เบธเบ‡เบ„เบงเบฒเบกเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡ Stream APIs เปเบฅเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เปƒเบ™เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบžเบฒเบเบชเปˆเบงเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ Node.js. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡ http.OutgoingMessage เปเบกเปˆเบ™เบขเบนเปˆเปƒเบเป‰เบเบฑเบš stream.Writable, เปเบฅเบฐ net.Socket เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš stream.Duplex. เบ•เบปเบงเป€เบฅเบทเบญเบ autoDestroy เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ "เบ„เบงเบฒเบกเบˆเบดเบ‡" เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบˆเบฐเป‚เบ—เบซเบฒ "_destroy" เป€เบกเบทเปˆเบญเบชเปเบฒเป€เบฅเบฑเบ”.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš API เบ—เบปเบ”เบฅเบญเบ‡ WASI (เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฅเบฐเบšเบปเบš WebAssembly), เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบŠเบญเบšเปเบงเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ (POSIX API เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป„เบŸเบฅเปŒ, เป€เบ•เบปเป‰เบฒเบฎเบฑเบš, เปเบฅเบฐเบญเบทเปˆเบ™เป†).
  • เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบชเปเบฒเบฅเบฑเบš เบฎเบธเปˆเบ™เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ” compilers เปเบฅเบฐเป€เบงเบ—เบต: macOS 10.13 (High Sierra), GCC 6, Windows เปƒเปเปˆเบเบงเปˆเบฒ 7/2008R2.

เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบก Node.js เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เบ—เบฑเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ”เป‰เบฒเบ™เป€เบŠเบตเบŸเป€เบงเบตเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป€เบงเบฑเบšเปเบฅเบฐเป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เป‚เบ›เบผเปเบเบผเบกเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบฅเบนเบเบ„เป‰เบฒเปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบปเปˆเบงเป„เบ›. เป€เบžเบทเปˆเบญเบ‚เบฐเบซเบเบฒเบเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบชเปเบฒเบฅเบฑเบš Node.js, เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡ เบเบฒเบ™โ€‹เป€เบเบฑเบšโ€‹เบเปเบฒโ€‹เบ‚เบญเบ‡โ€‹เป‚เบกโ€‹เบ”เบนเบ™โ€‹, เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒเป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒ HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, เป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเบเบญเบšเป€เบงเบฑเบšเบ•เปˆเบฒเบ‡เป†, WebSocket เปเบฅเบฐ Ajax handlers, เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš DBMS (MySQL, PostgreSQL, SQLite. , MongoDB ), เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปเบกเปˆเปเบšเบš, เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ CSS, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบšเบปเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบฅเบฑเบš เปเบฅเบฐเบฅเบฐเบšเบปเบšเบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ” (OAuth), เบ•เบปเบงเบงเบดเป€เบ„เบฒเบฐ XML.

เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบฐเบซเบ™เบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ, Node.js เปƒเบŠเป‰เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ” asynchronous เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบšเปเปˆเบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เป‚เบ—เบ„เบทเบ™. เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ multiplexing เบ›เบฐเบเบญเบšเบกเบต epoll, kqueue, /dev/poll, เปเบฅเบฐเป€เบฅเบทเบญเบ. เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ multiplex เบฅเบตเบšเบน, เบŠเบถเปˆเบ‡เป€เบ›เบฑเบ™ superstructure เบซเบผเบฒเบเบเบงเปˆเบฒ เบฅเบตเป€เบšเบง เปƒเบ™เบฅเบฐเบšเบปเบš Unix เปเบฅเบฐเบซเบผเบฒเบเบเบงเปˆเบฒ IOCP เปƒเบ™ Windows. เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เปเบกเปˆเบ™เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบธเปˆเบกเบเบฐเบ—เบนเป‰ เบฅเบดเป€เบšเป‚เบญ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก DNS เปƒเบ™เป‚เบซเบกเบ”เบšเปเปˆเบชเบฐเบเบฑเบ”เปเบกเปˆเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™ c-ares. เบเบฒเบ™เป‚เบ—เบฅเบฐเบšเบปเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบเบฒเบ™เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เปเบกเปˆเบ™เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฒเบเปƒเบ™เบชเบฐเบ™เบธเบเป€เบเบตเบ‚เบญเบ‡ thread เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เป€เบŠเบฑเปˆเบ™เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบชเบฑเบ™เบเบฒเบ™, เบชเบปเปˆเบ‡เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ„เบทเบ™เบœเปˆเบฒเบ™เบ—เปเปˆเบ—เบตเปˆเบšเปเปˆเบกเบตเบŠเบทเปˆ. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ” JavaScript เปเบกเปˆเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบ Google V8 (เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, Microsoft เบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเบฐเบšเบฑเบšเบ‚เบญเบ‡ Node.js เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ Chakra-Core).

เปƒเบ™เบซเบผเบฑเบเบ‚เบญเบ‡เบกเบฑเบ™, Node.js เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบเบญเบš Perl AnyEvent, เป€เบ„เบทเปˆเบญเบ‡เป€เบซเบ”เบเบฒเบ™ Ruby, Python Twisted ะธ เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” เป€เบซเบ”เบเบฒเบ™เปƒเบ™ Tcl, เปเบ•เปˆเป€เบซเบ”เบเบฒเบ™ loop เปƒเบ™ Node.js เบ–เบทเบเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เบˆเบฒเบเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบฅเบฐเบ„เป‰เบฒเบเบ„เบทเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เป€เบซเบ”เบเบฒเบ™เปƒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป€เบงเบฑเบšเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบš. เป€เบกเบทเปˆเบญเบ‚เบฝเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบชเปเบฒเบฅเบฑเบš node.js, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบชเบฐเป€เบžเบฒเบฐเบ‚เบญเบ‡เบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบ—เบตเปˆเบ‚เบฑเบšเป€เบ„เบทเปˆเบญเบ™เป‚เบ”เบเป€เบซเบ”เบเบฒเบ™, เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ” "var result = db.query("เป€เบฅเบทเบญเบ..");" เบเบฑเบšเบเบฒเบ™เบฅเปเบ–เป‰เบฒเบเบฒเบ™เบชเปเบฒเป€เบฅเบฑเบ”เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบฅเบฐเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ•เปเปˆเบกเบฒ, Node.js เปƒเบŠเป‰เบซเบผเบฑเบเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” asynchronous, i.e. เบฅเบฐเบซเบฑเบ”เบˆเบฐเบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ โ€œdb.query(โ€œselect..โ€, function (result) {result processing});โ€, เป€เบŠเบดเปˆเบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบˆเบฐเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เบฅเบฐเบซเบฑเบ”เบ•เปเปˆเป„เบ›เบ—เบฑเบ™เบ—เบต, เปเบฅเบฐเบœเบปเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบˆเบฐเบ–เบทเบเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบกเบทเปˆเบญเบ‚เปเป‰เบกเบนเบ™เบกเบฒเบฎเบญเบ”. .

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™