Loaʻa ka paepae JavaScript ʻaoʻao Node.js 19.0

Ua hoʻokuʻu ʻia ʻo Node.js 19.0, kahi kahua no ka holo ʻana i nā noi pūnaewele ma JavaScript. He lālā kākoʻo maʻamau ʻo Node.js 19 me nā mea hou i loaʻa a hiki i Iune 2023. I nā lā e hiki mai ana, e hoʻopau ʻia ka hoʻopaʻa ʻana o ka lālā Node.js 18, e loaʻa iā ia ke kūlana LTS a kākoʻo ʻia a hiki i ʻApelila 2025. E mau ana ka mālama ʻana i ka lālā LTS o Node.js 16.0 a hiki i Kepakemapa 2023, a me ka makahiki ma mua o ka lālā LTS 14.0 a hiki i ʻApelila 2023.

Nā hoʻomaikaʻi nui:

  • Ua hōʻano houʻia ka mīkini V8 i ka version 10.7, i hoʻohanaʻia ma Chromium 107. Ma waena o nā hoʻololi o ka mīkini i hoʻohālikelikeʻia me ka lālā Node.js 18, uaʻikeʻia ka hoʻokōʻana i ke kolu o ka Intl.NumberFormat API, e hoʻohui i nā hana hou formatRange. (), formatRangeToParts() a me ke kohoRange(), ka hui pū ʻana o nā pūʻulu, nā koho hou no ka pōʻai ʻana a me ka hoʻonohonoho pololei ʻana, ka hiki ke wehewehe i nā kaula e like me nā helu decimal. Ua hōʻano hou ʻia nā mea hilinaʻi llhttp 8.1.0 a me npm 8.19.2.
  • Ua noi ʻia kahi kauoha "node -watch" hoʻokolohua e hoʻokō i kahi ʻano kiaʻi e hōʻoia i ka hoʻomaka hou ʻana o ke kaʻina hana i ka wā e loli ai ka faila i lawe ʻia (no ka laʻana, inā hoʻokō ʻia ka "node -watch index.js", e hoʻomaka hou ke kaʻina hana. ke hoʻololi ʻo index.js).
  • No nā pilina HTTP/HTTPS i waho, hoʻohana ʻia ke kākoʻo no ka ʻōnaehana HTTP 1.1 Keep-Alive, e waiho ana i ka pilina e wehe no kekahi manawa e hana i kekahi mau noi HTTP i loko o ka pilina like. Manaʻo ʻia ʻo Keep-Alive e hoʻomaikaʻi i ka throughput a me ka hana. Ma ka maʻamau, ua hoʻonohonoho ʻia ka manawa wehe ʻana o ka pilina i 5 kekona. Ua hoʻohui ʻia ke kākoʻo no ka hoʻopau ʻana i ke poʻomanaʻo HTTP Keep-Alive i nā pane kikowaena i ka hoʻokō ʻana o ka mea kūʻai aku HTTP, a ua hoʻohui ʻia ka wehe ʻana o nā mea kūʻai aku ʻole e hoʻohana ana iā Keep-Alive i ka hoʻokō server HTTP Node.js.
  • Ua hoʻoneʻe ʻia ka WebCrypto API i ka māhele paʻa, koe naʻe nā hana e hoʻohana ana i nā algorithms Ed25519, Ed448, X25519 a me X448. No ke komo ʻana i ka module WebCrypto hiki iā ʻoe ke hoʻohana i ka globalThis.crypto a i ʻole koi('node:crypto').webcrypto.
  • Ua wehe ʻia ke kākoʻo no ka DTrace, SystemTap a me ETW (Event Tracing for Windows), ʻo ka mālama ʻana i manaʻo ʻia he kūpono ʻole ma muli o ka paʻakikī o ka mālama ʻana iā ia i kēia lā me ka loaʻa ʻole o kahi hoʻolālā kākoʻo kūpono.

Hiki ke hoʻohana ʻia ka paepae Node.js no ka mālama kikowaena o nā polokalamu Pūnaewele a no ka hoʻokumu ʻana i nā polokalamu kelepona maʻamau a me nā kikowaena kikowaena. No ka hoʻonuiʻana i ka hana o nā noi no Node.js, ua hoʻomākaukauʻia kahi hōʻiliʻili nui o nā modula, kahi e hiki ai iāʻoe ke loaʻa nā modula me ka hoʻokōʻana o HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 servers a me nā mea kūʻai, modules no ka hoʻohui. me nā pūnaewele pūnaewele likeʻole, WebSocket a me nā mea lima Ajax , nā mea hoʻohui DBMS (MySQL, PostgreSQL, SQLite, MongoDB), nā mīkini hoʻohālike, nā mīkini CSS, nā hoʻokō o nā crypto algorithms a me nā pūnaewele mana (OAuth), XML parsers.

No ka hōʻoia ʻana i ka hana ʻana o ka nui o nā noi like, hoʻohana ʻo Node.js i kahi hoʻohālike hoʻokō code asynchronous e pili ana i ka mālama ʻana i ka hanana ʻole a me ka wehewehe ʻana o nā mea hoʻohana kelepona. ʻO nā ala i kākoʻo ʻia no ka hoʻohui ʻana i nā pilina he epoll, kqueue, /dev/poll, a koho. No ka hoʻohui multiplexing, hoʻohana ʻia ka waihona libuv, kahi mea hoʻohui no libev ma nā ʻōnaehana Unix a me IOCP ma Windows. Hoʻohana ʻia ka waihona libeio no ka hana ʻana i kahi kolamu thread, a ua hoʻohui ʻia nā c-ares e hana i nā nīnau DNS ma ke ʻano pale ʻole. Hoʻokō ʻia nā kelepona ʻōnaehana āpau i hoʻopaʻa ʻia i loko o ka loko o ke kaula a laila, e like me nā mea lawelawe hōʻailona, ​​hoʻihoʻi i ka hopena o kā lākou hana ma o ka paipu inoa ʻole (pipe). Hāʻawi ʻia ka hoʻokō ʻana i ka code JavaScript ma o ka hoʻohana ʻana i ka mīkini V8 i hoʻomohala ʻia e Google (eia kekahi, ke kūkulu nei ʻo Microsoft i kahi mana o Node.js me ka ʻenekini Chakra-Core).

Ma kona kumu, ua like ka Node.js me ka Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, a me ka hoʻokō hanana Tcl, akā ua hūnā ʻia ka hanana hanana ma Node.js mai ka mea hoʻomohala a ua like me ka lawelawe ʻana i ka hanana ma kahi noi pūnaewele e holo ana. ma ka polokalamu kele pūnaewele. I ke kākau ʻana i nā noi no node.js, pono ʻoe e noʻonoʻo i nā kikoʻī o ka hoʻonohonoho ʻana i ka hanana, no ka laʻana, ma mua o ka hana ʻana "var result = db.query("select..");" me ka kali ʻana no ka pau ʻana o ka hana a me ka hoʻoili ʻana o nā hopena, hoʻohana ʻo Node.js i ke kumu o ka hoʻokō asynchronous, ʻo ia hoʻi. ua hoʻololi ʻia ke code i "db.query ("koho ..", hana (hopena) {hopena hana});", kahi e hele koke ai ka mana i ke code hou aʻe, a e hana ʻia ka hopena nīnau i ka hiki ʻana mai o ka ʻikepili.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka