Server-sab JavaScript Node.js 14.0 tso tawm

coj qhov chaw tso tawm npe.js 14.0, platforms rau kev khiav haujlwm network hauv JavaScript. Node.js 14.0 yog ib ceg txhawb nqa mus ntev, tab sis qhov xwm txheej no tsuas yog muab rau lub Kaum Hlis, tom qab kev ruaj khov. Node.js 14.0 yuav tau txais kev txhawb nqa yuav ua mus txog rau lub Plaub Hlis 2023. Kev saib xyuas ntawm LTS yav dhau los ceg ntawm Node.js 12.0 yuav kav mus txog lub Plaub Hlis 2022, thiab xyoo ua ntej LTS ceg 10.0 mus txog lub Plaub Hlis 2021. Kev them nyiaj yug rau 13.x staging ceg yuav xaus rau lub Rau Hli xyoo no.

ntsiab kev txhim kho:

  • Lub peev xwm tsim tau ntawm ya los yog thaum tshwm sim ntawm qee yam xwm txheej tau ruaj khov cov ntaub ntawv kuaj mob, uas tso saib cov xwm txheej uas pab txheeb xyuas cov teeb meem xws li kev sib tsoo, kev ua haujlwm tsis zoo, kev nco tsis txaus, hnyav CPU load, tsis xav txog qhov yuam kev tso tawm, thiab lwm yam.
  • Ntxiv kev sim API txhawb nqa Async Local Storage nrog rau kev siv ntawm AsyncLocalStorage chav kawm, uas tuaj yeem siv los tsim lub xeev asynchronous nrog cov neeg ua haujlwm raws li kev hu xov tooj rov qab thiab cov lus cog tseg. AsyncLocalStorage tso cai rau koj khaws cov ntaub ntawv thaum lub vev xaib thov raug ua tiav, nco txog cov xov-hauv zos cia hauv lwm hom lus.
  • Tshem tawm cov lus ceeb toom txog kev sim ua haujlwm thaum thauj khoom modules ECMAScript xyoo 6 txuas thiab xa tawm siv cov nqe lus ntshuam thiab xa tawm. Tib lub sijhawm, kev siv ESM modules nws tus kheej tseem sim.
  • V8 cav hloov kho rau version 8.1 (1, 2, 3), uas suav nrog cov kev ua tau zoo tshiab thiab cov yam ntxwv xws li tus neeg ua haujlwm sib txuas lus tshiab "???" (xa rov qab txoj cai operand yog hais tias sab laug operand yog NULL los yog undefined, thiab vice versa), tus neeg teb xov tooj "?." rau kev kuaj ib zaug ntawm tag nrho cov saw ntawm cov khoom lossis kev hu (piv txwv li, "db?.user?.name?.length" yam tsis muaj kev kuaj ua ntej), Intl.DisplayName txoj kev kom tau txais cov npe hauv zos, thiab lwm yam.
  • Kev hloov kho ntawm Stream API tau ua tiav, txhawm rau txhim kho qhov sib xws ntawm Stream APIs thiab tshem tawm qhov sib txawv ntawm tus cwj pwm ntawm qhov pib ntawm Node.js. Piv txwv li, tus cwj pwm ntawm http.OutgoingMessage yog ze rau kwj.Writable, thiab net.Socket zoo ib yam li kwj.Duplex. Qhov kev xaiv autoDestroy yog teem rau "muaj tseeb" los ntawm lub neej ntawd, uas txhais tau tias hu "_destroy" thaum ua tiav.
  • Ntxiv kev sim API txhawb nqa WASI (WebAssembly System Interface), muab software cuam tshuam rau kev sib cuam tshuam ncaj qha nrog lub operating system (POSIX API rau kev ua haujlwm nrog cov ntaub ntawv, qhov (sockets, thiab lwm yam).
  • Cov kev xav tau ntxiv rau tsawg kawg versions compilers thiab platforms: macOS 10.13 (High Sierra), GCC 6, Windows newer 7/2008R2.

Cia peb nco qab tias Node.js platform tuaj yeem siv ob qho tib si rau kev txhawb nqa server-sab ntawm Web applications thiab tsim cov neeg siv khoom zoo tib yam thiab cov kev pabcuam network server. Txhawm rau nthuav dav cov haujlwm ntawm cov ntawv thov rau Node.js, ntau tus sau cov modules, nyob rau hauv uas koj tuaj yeem nrhiav modules nrog kev siv cov servers thiab cov neeg siv HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, modules rau kev koom ua ke nrog ntau lub vev xaib, WebSocket thiab Ajax handlers, connectors rau DBMS (MySQL, PostgreSQL, SQLite , MongoDB ), template engines, CSS engines, kev siv cryptographic algorithms thiab tso cai systems (OAuth), XML parsers.

Txhawm rau tswj hwm tus lej loj ntawm cov lus thov sib npaug, Node.js siv tus qauv asynchronous code ua raws li kev ua haujlwm tsis thaiv kev tshwm sim thiab txhais cov neeg hu xov tooj rov qab. Txhawb txoj hauv kev rau multiplexing kev sib txuas suav nrog epoll, kqueue, /dev/poll, thiab xaiv. Lub tsev qiv ntawv yog siv rau kev sib txuas multiplex libuv, uas yog ib tug superstructure tshaj libev ntawm Unix systems thiab dhau IOCP ntawm Windows. Lub tsev qiv ntawv yog siv los tsim ib lub pas dej libeio, rau kev ua cov lus nug DNS hauv hom tsis thaiv yog kev sib xyaw c-aws. Tag nrho cov kev hu xov tooj uas ua rau kev thaiv yog raug tua nyob rau hauv lub pas dej ua ke thiab tom qab ntawd, zoo li cov teeb liab handlers, dhau qhov tshwm sim ntawm lawv txoj haujlwm rov qab los ntawm cov yeeb nkab tsis muaj npe. Kev ua tiav ntawm JavaScript code yog xyuas los ntawm kev siv lub cav tsim los ntawm Google V8 (Tsis tas li ntawd, Microsoft tab tom tsim ib qho version ntawm Node.js nrog Chakra-Core engine).

Ntawm nws qhov tseem ceeb, Node.js zoo ib yam li cov qauv Perl AnyEvent, Ruby Event Machine, Python Twisted ΠΈ kev siv Cov xwm txheej hauv Tcl, tab sis qhov xwm txheej nyob hauv Node.js tau muab zais los ntawm tus tsim tawm thiab zoo ib yam li kev tshwm sim tuav hauv daim ntawv thov web khiav hauv browser. Thaum sau cov ntawv thov rau node.js, nws yuav tsum tau coj mus rau hauv tus account qhov tshwj xeeb ntawm qhov kev tshwm sim-tsav programming, piv txwv li, tsis txhob ua "var result = db.query("xaiv..");" nrog tos kom tiav kev ua haujlwm thiab kev ua tiav tom qab ntawm cov txiaj ntsig, Node.js siv lub hauv paus ntsiab lus ntawm asynchronous execution, i.e. cov cai tau hloov mus rau hauv "db.query("xaiv..", muaj nuj nqi (tshem tawm) {tshem tawm});", nyob rau hauv uas tswj tam sim ntawd yuav dhau mus rau cov lej ntxiv, thiab cov lus nug tshwm sim yuav ua tiav raws li cov ntaub ntawv tuaj txog. .

Tau qhov twg los: opennet.ru

Ntxiv ib saib