Sethala sa JavaScript se lehlakoreng la seva Node.js 19.0 se fumaneha

Node.js 19.0 e lokollotsoe, sethala sa ho tsamaisa lits'ebetso tsa marang-rang ho JavaScript. Node.js 19 ke lekala la ts'ehetso ea kamehla le lintlafatso tse fumanehang ho fihlela Phuptjane 2023. Matsatsing a tlang, ho tsitsisoa ha lekala la Node.js 18 ho tla phethoa, e tla fumana boemo ba LTS mme e tla tšehetsoa ho fihlela ka April 2025. Tlhokomelo ea lekala la pele la LTS la Node.js 16.0 e tla tšoarella ho fihlela Loetse 2023, le selemo pele ho LTS lekala la 14.0 ho fihlela ka Mmesa 2023.

Lintlafatso tsa mantlha:

  • Enjene ea V8 e ntlafalitsoe ho mofuta oa 10.7, e sebelisoang ho Chromium 107. Har'a liphetoho tsa enjene ha li bapisoa le lekala la Node.js 18, ts'ebetsong ea phetolelo ea boraro ea Intl.NumberFormat API e hlokometsoe, e leng ho eketsang mefuta e mecha ea mesebetsi Range. (), formatRangeToParts() le selectRange(), lihlopha tsa lihlopha, likhetho tse ncha tsa ho pota-pota le ho seta ka nepo, bokhoni ba ho toloka likhoele e le linomoro tsa decimal. Litšepeho tse kenyellelitsoeng llhttp 8.1.0 le npm 8.19.2 le tsona li ntlafalitsoe.
  • Taelo ea liteko ea "node -watch" e hlahisitsoe e sebelisang mokhoa oa ho shebella o netefatsang hore ts'ebetso e qala hape ha faele e tsoang kantle e fetoha (mohlala, haeba "node -watch index.js" e phethiloe, ts'ebetso e tla qala hape ka bo eona. ha index.js e fetoha).
  • Bakeng sa likhokahano tsohle tse tsoang tsa HTTP/HTTPS, ts'ehetso ea mochini oa HTTP 1.1 Keep-Alive e ea lumelloa, e sieang khokahano e bulehile ka nako e itseng ho sebetsana le likopo tse 'maloa tsa HTTP ka har'a khokahanyo e tšoanang. Keep-Alive e lebelletsoe ho ntlafatsa ts'ebetso le ts'ebetso. Ka kamehla, nako ea ho koaloa ha khokahano e behiloe ho metsotsoana e 5. Ts'ehetso ea ho hlophisa hlooho ea Keep-Alive HTTP likarabong tsa seva e kentsoe ts'ebetsong ea bareki ba HTTP, 'me ho khaoha ka boiketsetso ha bareki ba sa sebetseng ba sebelisang Keep-Alive ho kentsoe ts'ebetsong ea seva ea Node.js HTTP.
  • WebCrypto API e fetiselitsoe sehlopheng se tsitsitseng, ntle le mesebetsi e sebelisang Ed25519, Ed448, X25519 le X448 algorithms. Ho fihlella mojule oa WebCrypto joale u ka sebelisa globalThis.crypto kapa hloka('node:crypto').webcrypto.
  • Tšehetso bakeng sa lisebelisoa tsa ho latela tsa DTrace, SystemTap le ETW (Event Tracing for Windows) e tlositsoe, e leng tlhokomelo e neng e nkoa e sa tšoanelehe ka lebaka la ho rarahana ha ho e boloka ho fihlela joale ha ho se na moralo o nepahetseng oa tšehetso.

Sethala sa Node.js se ka sebelisoa ka bobeli bakeng sa tlhokomelo ea li-server tsa lits'ebetso tsa Webo le ho theha mananeo a tloaelehileng a bareki le marang-rang. Ho holisa ts'ebetso ea lits'ebetso tsa Node.js, ho lokiselitsoe pokello e kholo ea li-module, tseo ho tsona u ka fumanang li-module tse nang le ts'ebetsong ea HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 li-server le bareki, li-module tsa ho kopanya. ka mekhoa e fapaneng ea marang-rang, li-WebSocket le li-Ajax handlers , li-connectors tsa DBMS (MySQL, PostgreSQL, SQLite, MongoDB), li-engines tsa templating, lienjineri tsa CSS, ts'ebetsong ea li-algorithms tsa crypto le litsamaiso tsa tumello (OAuth), li-parser tsa XML.

Ho netefatsa ts'ebetso ea palo e kholo ea likopo tse ts'oanang, Node.js e sebelisa mokhoa o sa ts'oaneng oa ts'ebetso oa khoutu o ipapisitseng le ts'ebetso e sa thibeleng ea ketsahalo le tlhaloso ea batšoantšisi ba callback. Mekhoa e tšehelitsoeng bakeng sa likhokahano tsa multiplexing ke epoll, kqueue, /dev/poll, le khetha. Bakeng sa ho kopanya li-multiplexing, ho sebelisoa laeborari ea libuv, e leng tlatsetso bakeng sa libev lits'ebetsong tsa Unix le IOCP ho Windows. Laebrari ea libeio e sebelisetsoa ho etsa letamo la likhoele, 'me li-c-ares li kopantsoe ho etsa lipotso tsa DNS ka mokhoa o sa thibeleng. Mehala eohle ea sistimi e bakang thibelo e etsoa ka har'a letamo la likhoele, ebe, joalo ka batšoasi ba matšoao, ba fetisetsa sephetho sa mosebetsi oa bona ka phala e sa boleloang ka lebitso (pipe). Ts'ebetso ea khoutu ea JavaScript e fanoa ka ts'ebeliso ea enjene ea V8 e ntlafalitsoeng ke Google (ho feta moo, Microsoft e nts'etsapele mofuta oa Node.js ka enjene ea Chakra-Core).

Motheong oa eona, Node.js e tšoana le Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, le ts'ebetsong ea ketsahalo ea Tcl, empa leqhubu la ketsahalo ho Node.js le patiloe ho moqapi 'me le tšoana le ketsahalo ea ho sebetsana le ts'ebeliso ea websaete e sebetsang. ho seshebisi. Ha u ngola likopo tsa node.js, u lokela ho nahana ka lintlha tse tobileng tsa lenaneo le tsamaisoang ke liketsahalo, mohlala, ho e-na le ho etsa "var result = db.query("select..");" ka ho emela ho phethoa ha mosebetsi le ts'ebetso e latelang ea liphetho, Node.js e sebelisa molao-motheo oa ts'ebetso ea asynchronous, i.e. khoutu e fetoloa "db.query ("khetha ..", mosebetsi (sephetho) {result processing});", moo taolo e tla fetela hang-hang ho khoutu e eketsehileng, 'me sephetho sa potso se tla sebetsoa ha data e fihla.

Source: opennet.ru

Eketsa ka tlhaloso