เบเบฒเบเบเปเบญเบเบเบญเบ Node.js 17.0, เปเบงเบเบตเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเปเบเบทเบญเบเปเบฒเบเปเบ JavaScript, เปเบเปเปเบเบตเบเบเบถเปเบ. Node.js 17.0 เปเบเบฑเบเบชเบฒเบเบฒเบเบตเปเบฎเบญเบเบฎเบฑเบเบเบปเบเบเบฐเบเบดเบเปเบงเบเบเบฒเบเบญเบฑเบเปเบเบเบเบปเบเบฎเบญเบเปเบเบทเบญเบเบกเบดเบเบธเบเบฒ 2022. เปเบเบกเบทเปเบเปเบฒเบเบซเบเปเบฒ, เบชเบฐเบเบฝเบเบฅเบฐเบเบฒเบเบเบญเบเบชเบฒเบเบฒ Node.js 16 เบเบฐเบชเปเบฒเปเบฅเบฑเบ, เปเบเบดเปเบเบเบฐเปเบเปเบฎเบฑเบเบชเบฐเบเบฒเบเบฐเบเบฒเบ LTS เปเบฅเบฐเบเบฐเปเบเปเบฎเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบปเบเบเปเบงเบฒเปเบเบทเบญเบเปเบกเบชเบฒ 2024. เบเบฒเบเบเบณเบฅเบธเบเบฎเบฑเบเบชเบฒเบชเบฒเบเบฒ Node.js 14.0 LTS เบเบตเปเบเปเบฒเบเบกเบฒเบเบฐเปเบเปเบเบฒเบงเปเบเบดเบเปเบเบทเบญเบเปเบกเบชเบฒ 2023, เปเบฅเบฐเบชเบฒเบเบฒ 12.0 LTS เบเบตเปเบเปเบฒเบเบกเบฒเบเบปเบเบฎเบญเบเปเบเบทเบญเบเปเบกเบชเบฒ 2022.
เบเบฒเบเบเบฑเบเบเบธเบเบเบปเปเบเบเป:
- เปเบเบทเปเบญเบเบเบฑเบ V8 เปเบเปเบเบทเบเบเบฑเบเบเบธเบเปเบเบฑเบเบฎเบธเปเบ 9.5.
- เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบปเบงเปเบเบเบญเบ API เบเบทเปเบเบเบฒเบเปเบเบเบญเบตเบเปเบชเปเบเบฒเบเบเปเบฒเปเบเปเบเบฒเบเปเบเปเบเบญเบเบเบญเบ Promise asynchronous computing เปเบเปเบชเบทเบเบเปเป. เบเบญเบเปเปเบทเบญเปเบเบเบฒเบ Timers Promises เปเบฅเบฐ Stream Promises APIs เบเบตเปเบชเบฐเปเปเบตเปเบเบเปเบญเบเปเปเบฒเบเบตเป, Node.js 17.0 เปเบเบฐเบเบณ Readline Promise API เบชเบณเบฅเบฑเบเบเบฒเบเบญเปเบฒเบเบเปเปเบกเบนเบเปเบเปเบฅเบฐเปเบเบงเปเบเบเปเบเปเปเบกเบเบนเบ readline. เบเบณเปเบเบปเปเบฒ * เปเบเบฑเบ readline เบเบฒเบ 'node:readline/promises'; import { stdin as input, stdout as output } เบเบฒเบ 'เบเบฐเบเบงเบเบเบฒเบ'; const rl = readline.createInterface({ input, output }); const answer = เบฅเปเบเบญเบ rl.question('เปเบเบปเปเบฒเบเบดเบเปเบเบงเปเบเบเบฑเบ Node.js?'); console.log('เบเปเบเบญเบเปเบเบเปเบฒเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบเบดเบเปเบซเบฑเบเบเบตเปเบกเบตเบเบธเบเบเปเบฒเบเบญเบเบเปเบฒเบ: ${answer}'); rl.close();
- เบซเปเบญเบเบชเบฐเปเบธเบ OpenSSL เบเบตเปเบชเบฐเปเบญเบเปเบซเปเปเบเปเบเบทเบเบญเบฑเบเปเบเบเปเบเบฑเบเปเบงเบตเบเบฑเปเบ 3.0 (เปเบเบเปเบเป quictls/openssl fork เบเบตเปเบฎเบญเบเบฎเบฑเบ QUIC protocol เปเบเป).
- เปเบซเปเปเบเปเปเบเบงเปเบฒเบชเบฐเบเบฑเบ Node.js เบเบทเบเบชเบฐเปเบเบเบขเบนเปเปเบ stack traces เบชเปเบฒเบฅเบฑเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบเบตเปเบฎเปเบฒเบเปเบฎเบเบเบตเปเปเบฎเบฑเบเปเบซเปเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเบขเบธเบ.
เบเบญเบเบเบฒเบเบเบฑเปเบ, เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเปเบฒเบงเปเบเบดเบเบเบฒเบเบฅเบปเบเบฅเปเบฒเบเบชเบญเบเบเปเบญเบเปเบซเบงเปเปเบเบชเบฒเบเบฒเบเบฐเบเบธเบเบฑเบเบเบญเบ Node.js (CVE-2021-22959, CVE-2021-22960), เปเบเบดเปเบเปเบฎเบฑเบเปเบซเปเบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบฐเบเบฐเบเบดเบเบฑเบเบเบฒเบเปเบเบกเบเบตเบเบญเบ HTTP Request Smuggling (HRS) class, เปเบเบดเปเบ. เบญเบฐเบเบธเบเบฒเบเปเบซเป, เปเบเบเบเปเบฒเบเบเบฒเบเบชเบปเปเบเบเปเบฒเบฎเปเบญเบเบเปเบเบญเบเบฅเบนเบเบเปเบฒเบเบตเปเบเบทเบเบญเบญเบเปเบเบเบเบดเปเบชเบ, เปเบเบปเปเบฒเปเบเปเบเปเบเบทเปเบญเปเบเบเบญเบเบเปเบฒเบฎเปเบญเบเบเปเบเบฒเบเบเบนเปเปเบเปเบญเบทเปเบเปเบเบตเปเบเปเบฒเปเบเบตเบเบเบฒเบเปเบเบเบฐเบเบนเปเบเบฝเบงเบเบฑเบเบฅเบฐเบซเบงเปเบฒเบ frontend เปเบฅเบฐ backend (เบเบปเบงเบขเปเบฒเบเปเบเบฑเปเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบฑเบเบฅเบธเบเบฒเบเบเบปเบเปเบเบเบฅเบฐเบซเบฑเบ JavaScript เบเบตเปเปเบเบฑเบเบญเบฑเบเบเบฐเบฅเบฒเบเปเบเบเบญเบเบเบฐเบเบธเบกเบเบญเบเบเบนเปเปเบเปเบญเบทเปเบ). เบฅเบฒเบเบฅเบฐเบญเบฝเบเบเบฐเบเบทเบเปเบเบตเบเปเบเบตเบเปเบเบเบฒเบเบซเบฅเบฑเบ, เปเบเปเบชเปเบฒเบฅเบฑเบเปเบเบเบฑเบเบเบธเบเบฑเบเบกเบฑเบเบเบฝเบเปเบเปเบฎเบนเปเบงเปเบฒเบเบฑเบเบซเบฒเปเบกเปเบเปเบเบตเบเบกเบฒเบเบฒเบเบเบฒเบเบเบฑเบเบเบฒเบเบเบตเปเบเปเปเบเบทเบเบเปเบญเบเบเบญเบเบเปเบญเบเบซเบงเปเบฒเบเบฅเบฐเบซเบงเปเบฒเบเบเบทเป HTTP header เปเบฅเบฐเบเปเปเบฒเบชเบญเบเปเบกเบฑเบ, เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบเบฒเบเบเบฑเบเบเบฒเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบเบญเบเบเบฒเบเบเบฑเบเบเบทเบ carriage เปเบฅเบฐเปเบชเบฑเปเบ feed เบเบปเบงเบญเบฑเบเบชเบญเบเปเบ parameter block เบเบตเปเปเบเปเปเบเปเบงเบฅเบฒเบเปเบฒเบ. เบฎเปเบฒเบโเบเบฒเบโเบเปเบฒโเบฎเปเบญเบโเบชเบฐโเบซเบกเบฑเบโเปเบ chunks เปเบโเบฎเบนเบโเปเบเบ "chunkedโ"โ. ".
เบเบทเปเปเบงเปเบงเปเบฒเปเบเบฅเบฐเบเบฐเบเบญเบก Node.js เบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฒเบฅเบธเบเบฎเบฑเบเบชเบฒเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบเบเบญเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเปเบงเบฑเบเปเบฅเบฐเบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเปเบฒเบเปเบเบเบเบฒเบเปเบเบทเบญเบเปเบฒเบเบฅเบนเบเบเปเบฒเปเบฅเบฐเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบเบเบปเปเบงเปเบ. เปเบเบทเปเบญเบเบฐเบซเบเบฒเบเบเบฒเบเบเปเบฒเบเบฒเบเบเบญเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบชเปเบฒเบฅเบฑเบ Node.js, เบเบฒเบเปเบเบฑเบเบเปเบฒเบเบฐเบซเบเบฒเบเปเบซเบเปเบเบญเบเปเบกเบเบนเบเปเบเปเบเบทเบเบเบฐเบเบฝเบก, เปเบเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบญเบเบซเบฒเปเบกเบเบนเบเบเบตเปเบกเบตเบเบฒเบเบเบฐเบเบดเบเบฑเบ HTTP, SMTP, XMPP, DNS, FTP, IMAP, เปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบ POP3 เปเบฅเบฐเบฅเบนเบเบเปเบฒ, เปเบกเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเปเบเบ. เบเบฑเบเบเบญเบเปเบงเบฑเบเบเปเบฒเบเป, WebSocket เปเบฅเบฐ Ajax handlers , DBMS connectors (MySQL, PostgreSQL, SQLite, MongoDB), templates engines, CSS engines, เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบญเบ crypto algorithms เปเบฅเบฐเบฅเบฐเบเบปเบเบเบฒเบเบญเบฐเบเบธเบเบฒเบ (OAuth), XML parsers.
เปเบเบทเปเบญเบฎเบฑเบเบเบฐเบเบฑเบเบเบฒเบเบเบฐเบกเบงเบเบเบปเบเบเปเบฒเบฎเปเบญเบเบเปเบเบฐเบซเบเบฒเบเบเปเบฒเบเบงเบเบซเบฅเบฒเบ, Node.js เปเบเปเบฎเบนเบเปเบเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบฅเบฐเบซเบฑเบ asynchronous เปเบเบเบญเบตเบเปเบชเปเบเบฒเบเบเบฑเบเบเบฒเบเปเบซเบเบเบฒเบเบเบตเปเบเปเปเบเบทเบเบเบฅเบฑเบญเบเปเบฅเบฐเบเปเบฒเบเบดเบเบฒเบกเบเบญเบเบเบปเบงเบเบฑเบเบเบฒเบเบเบฒเบเปเบเบเบทเบ. เบงเบดเบเบตเบเบฒเบเบเบตเปเบฎเบญเบเบฎเบฑเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเป multiplexing เปเบกเปเบ epoll, kqueue, /dev/poll, เปเบฅเบฐเปเบฅเบทเบญเบ. เบชเปเบฒเบฅเบฑเบเบเบฒเบ multiplexing เบเบฒเบเปเบเบทเปเบญเบกเบเปเป, เบซเปเบชเบฐเบซเบกเบธเบ libuv เบเบทเบเบเปเบฒเปเบเป, เปเบเบดเปเบเปเบเบฑเบ add-on เบชเปเบฒเบฅเบฑเบ libev เปเบเบฅเบฐเบเบปเบ Unix เปเบฅเบฐ IOCP เปเบ Windows. เบซเปเบญเบเบชเบฐเบซเบกเบธเบ libeio เบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบชเปเบฒเบเบชเบฐเบเบธเบเปเบเบตเบเบฐเบเบนเป, เปเบฅเบฐ c-ares เปเบเปเบเบทเบเบเบฐเบชเบปเบกเบเบฐเบชเบฒเบเปเบเบทเปเบญเบเบฐเบเบดเบเบฑเบเบเบฒเบเบชเบญเบเบเบฒเบก DNS เปเบเบฎเบนเบเปเบเบเบเบตเปเบเปเปเบเบดเบเบเบฑเปเบ. เบเบฒเบเปเบเบฅเบฐเบเบปเบเบเบฑเบเบซเบกเบปเบเบเบตเปเปเบฎเบฑเบเปเบซเปเปเบเบตเบเบเบฒเบเบเบฑเบเบเบงเบฒเบเปเบกเปเบเบเบทเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเปเบเบชเบฐเบเบธเบเปเบเบตเบเบญเบ thread เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, เปเบเบฑเปเบเบเบปเบงเบเบฑเบเบชเบฑเบเบเบฒเบ, เปเบญเบเบเบปเบเปเบเปเบฎเบฑเบเบเบญเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบญเบเบเบงเบเปเบเบปเบฒเบเบทเบเบเปเบฒเบเบเปเปเบเบตเปเบเปเปเบกเบตเบเบทเป (เบเปเป). เบเบฒเบเบเบฐเบเบดเบเบฑเบเบฅเบฐเบซเบฑเบ JavaScript เปเบกเปเบเบชเบฐเบซเบเบญเบเปเบซเปเปเบเบเบเปเบฒเบเบเบฒเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเบเบฑเบ V8 เบเบตเปเบเบฑเบเบเบฐเบเบฒเปเบเบ Google (เบเบญเบเบเบฒเบเบเบฑเปเบ, Microsoft เบเปเบฒเบฅเบฑเบเบเบฑเบเบเบฐเบเบฒเบชเบฐเบเบฑเบเบเบญเบ Node.js เบเบฑเบเปเบเบทเปเบญเบเบเบฑเบ Chakra-Core).
เบขเบนเปเปเบเบซเบผเบฑเบเบเบญเบเบกเบฑเบ, Node.js เปเบกเปเบเบเปเบฒเบเบเบทเบเบฑเบเบเบฑเบ Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, เปเบฅเบฐเบเบฒเบเบเบฑเบเบเบฑเปเบเบเบฐเบเบดเบเบฑเบเปเบซเบเบเบฒเบ Tcl, เปเบเป loop เปเบซเบเบเบฒเบเปเบ Node.js เบเบทเบเปเบเบทเปเบญเบเปเบงเปเบเบฒเบเบเบนเปเบเบฑเบเบเบฐเบเบฒเปเบฅเบฐเบเปเบฒเบเบเบทเบเบฑเบเบเบฒเบเบเบฑเบเบเบฒเบเปเบซเบเบเบฒเบเปเบเปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบเปเบงเบฑเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบ. เปเบ browser. เปเบกเบทเปเบญเบเบฝเบเบเปเบฒเบฎเปเบญเบเบชเบฐเบซเบกเบฑเบเบชเปเบฒเบฅเบฑเบ node.js, เบเปเบฒเบเบเปเบฒเปเบเบฑเบเบเปเบญเบเบเบดเบเบฒเบฅเบฐเบเบฒเบชเบฐเปเบเบฒเบฐเบเบญเบเบเบฒเบเบเบฝเบเปเบเบผเปเบเบผเบกเบเบตเปเบเบฑเบเปเบเบทเปเบญเบเปเบเบเปเบซเบเบเบฒเบ, เบเบปเบงเบขเปเบฒเบ, เปเบเบเบเบตเปเบเบฐเปเบฎเบฑเบ "var result = db.query("select..");" เบเบฑเบเบเบฒเบเบฅเปเบเปเบฒเบเบฒเบเบชเปเบฒเปเบฅเบฑเบเบเบญเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบฅเบฐเบเบฒเบเบเบธเบเปเบเปเบเบเบปเบเปเบเปเบฎเบฑเบเบเปเปเบกเบฒ, Node.js เปเบเปเบซเบผเบฑเบเบเบฒเบเบเบญเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ asynchronous, i.e. เบฅเบฐเบซเบฑเบเบเบทเบเบเปเบฝเบเปเบเบฑเบ "db.query("select..", function (result) {result processing});", เปเบเบดเปเบเบเบฒเบเบเบงเบเบเบธเบกเบเบฐเบชเบปเปเบเบเปเบฒเบเบฅเบฐเบซเบฑเบเบเปเปเปเบเบเบฑเบเบเบต, เปเบฅเบฐเบเบปเบเบเบฒเบเบชเบญเบเบเบฒเบกเบเบฐเบเบทเบเบเบฐเบกเบงเบเบเบปเบเปเบกเบทเปเบญเบเปเปเบกเบนเบเบกเบฒเบฎเบญเบ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru