Server-side JavaScript platform Node.js 19.0 ilipo

Node.js 19.0, nsanja yogwiritsira ntchito maukonde mu JavaScript, idatulutsidwa. Node.js 19 ndi nthambi yothandizira nthawi zonse yomwe ili ndi zosintha mpaka June 2023. M'masiku akubwerawa, kukhazikika kwa nthambi ya Node.js 18 kumalizidwa, yomwe idzalandira LTS ndipo idzathandizidwa mpaka Epulo 2025. Kusamalira nthambi yam'mbuyo ya LTS ya Node.js 16.0 kudzakhala mpaka Seputembara 2023, ndipo chaka chatha LTS nthambi 14.0 mpaka Epulo 2023.

Kusintha kwakukulu:

  • Injini ya V8 yasinthidwa kukhala 10.7, yogwiritsidwa ntchito mu Chromium 107. Pakati pa kusintha kwa injini poyerekeza ndi nthambi ya Node.js 18, kukhazikitsidwa kwa mtundu wachitatu wa Intl.NumberFormat API kumadziwika, komwe kumawonjezera ntchito zatsopano (), formatRangeToParts() ndi selectRange(), magulu a seti, zosankha zatsopano zozungulira ndikukhazikitsa molondola, kutha kutanthauzira zingwe ngati manambala a decimal. Zodalira zomwe zikuphatikizidwa llhttp 8.1.0 ndi npm 8.19.2 zasinthidwanso.
  • Lamulo loyesera la "node -watch" laperekedwa ndikukhazikitsa mawonekedwe owonera omwe amawonetsetsa kuti ntchitoyi iyambiranso pomwe fayilo yotumizidwa kunja ikusintha (mwachitsanzo, ngati "node -watch index.js" ichitidwa, njirayo idzakhala idayambiranso yokha index.js ikasintha).
  • Pamalumikizidwe onse a HTTP/HTTPS, chithandizo cha HTTP 1.1 Keep-Alive chimayatsidwa, chomwe chimasiya kulumikizanako kutsegukira kwakanthawi kuti akwaniritse zopempha zingapo za HTTP mkati mwa kulumikizana komweko. Keep-Alive ikuyembekezeka kupititsa patsogolo magwiridwe antchito komanso magwiridwe antchito. Mwachikhazikitso, nthawi yotsegula yolumikizira imayikidwa masekondi 5. Thandizo lofotokozera mutu wa Keep-Alive HTTP mu mayankho a seva yawonjezedwa ku kukhazikitsa kwa kasitomala wa HTTP, ndipo kuchotsedwa kwamakasitomala osagwira ntchito pogwiritsa ntchito Keep-Alive kwawonjezedwa pakukhazikitsa kwa seva ya Node.js HTTP.
  • WebCrypto API yasamutsidwa ku gulu lokhazikika, kupatulapo ntchito pogwiritsa ntchito Ed25519, Ed448, X25519 ndi X448 algorithms. Kuti mupeze gawo la WebCrypto tsopano mutha kugwiritsa ntchito globalThis.crypto kapena kufuna('node:crypto').webcrypto.
  • Thandizo la zida zolondolera za DTrace, SystemTap ndi ETW (Event Tracing for Windows) zachotsedwa, kukonza komwe kunkawoneka ngati kosayenera chifukwa chazovuta kuzisunga mpaka pano popanda dongosolo lothandizira.

Pulatifomu ya Node.js itha kugwiritsidwa ntchito pokonza ma seva a mapulogalamu a pa intaneti komanso kupanga mapulogalamu okhazikika a kasitomala ndi ma seva. Kukulitsa magwiridwe antchito a Node.js, gulu lalikulu la ma module akonzedwa, momwe mungapeze ma module ndi kukhazikitsa kwa HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 ma seva ndi makasitomala, ma module ophatikizira. yokhala ndi mawebusayiti osiyanasiyana, WebSocket ndi Ajax handlers, zolumikizira za DBMS (MySQL, PostgreSQL, SQLite, MongoDB), injini zowonera, injini za CSS, kukhazikitsidwa kwa ma crypto algorithms ndi machitidwe ovomerezeka (OAuth), XML parsers.

Kuonetsetsa kukonzedwa kwa zopempha zambiri zofananira, Node.js imagwiritsa ntchito njira yotsatsira ma code asynchronous potengera kusatsekereza zochitika zosatsekereza komanso kutanthauzira kwa omenyera callback. Njira zothandizira zolumikizira ma multiplexing ndi epoll, kqueue, /dev/poll, ndikusankha. Pakulumikiza kuchulukitsa, laibulale ya libuv imagwiritsidwa ntchito, yomwe ndi chowonjezera cha libev pa Unix system ndi IOCP pa Windows. Laibulale ya libeio imagwiritsidwa ntchito popanga dziwe la ulusi, ndipo ma c-ares amaphatikizidwa kuti achite mafunso a DNS munjira yosatsekereza. Mafoni onse omwe amayambitsa kutsekereza amachitidwa mkati mwa dziwe la ulusi ndiyeno, monga oyendetsa ma siginecha, amasamutsa zotsatira za ntchito yawo kudzera pa chitoliro chosatchulidwa dzina (chitoliro). Kukonzekera kwa JavaScript code kumaperekedwa pogwiritsa ntchito injini ya V8 yopangidwa ndi Google (kuphatikizanso, Microsoft ikupanga Node.js ndi injini ya Chakra-Core).

Pachimake, Node.js ndi ofanana ndi Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, ndi kukhazikitsidwa kwa zochitika za Tcl, koma zochitika za Node.js zimabisika kwa wopanga mapulogalamu ndipo zimafanana ndi zochitika pa intaneti. mu msakatuli. Polemba mapulogalamu a node.js, muyenera kuganizira zazomwe zimayendetsedwa ndi zochitika, mwachitsanzo, m'malo mochita "var result = db.query("select..");" podikirira kumaliza ntchito ndikukonza zotsatila, Node.js imagwiritsa ntchito mfundo ya kuphedwa kosagwirizana, i.e. code imasinthidwa kukhala "db.query("select..", function (result) {result processing});", momwe ulamuliro udzadutsa nthawi yomweyo ku code yowonjezera, ndipo zotsatira zafunso zidzasinthidwa pamene deta ikufika.

Source: opennet.ru

Kuwonjezera ndemanga