Platforma Node.js 24.0.0 është publikuar

Lëshimi i Node.js 24.0.0 u realizua, një platformë për ekzekutimin e aplikacioneve të rrjetit me gjuhën JavaScript. Node.js 24.0 është klasifikuar si një version me mbështetje afatgjatë, por ky status do t'i jepet vetëm në tetor, pas procesit të stabilizimit. Mbështetje për Node.js 24.x do të ofrohet deri më 30 prill 2028. Mbështetje për versionin e kaluar LTS Node.js 22.x do të vazhdojë deri në prillin 2027, ndërsa për versionin paraardhës LTS 20.x deri në prillin 2026. Mbështetje për versionin LTS 18.x u ndërpre më 30 prill 2025, ndërsa për versionin ndërmjetës Node.js 23.x do të ndërpritet më 1 qershor 2025.

Përmirësime kryesore:

  • NĂ« API-nĂ« AsyncLocalStorage, klasi AsyncContextFrame Ă«shtĂ« i angazhuar si standard. AsyncContextFrame implementon njĂ« mekanizĂ«m mĂ« efikas tĂ« ndjekjes sĂ« kontekstit asinkron, duke lejuar njĂ« rritje tĂ« dukshme tĂ« performancĂ«s.
  • API URLPattern tani Ă«shtĂ« i disponueshĂ«m si njĂ« objekt global, i cili mund tĂ« pĂ«rdoret pa importim tĂ« qartĂ«. URLPattern ofron mundĂ«si pĂ«r tĂ« verifikuar pĂ«rputhshmĂ«rinĂ« e URL-ve me njĂ« model tĂ« caktuar, qĂ« mund tĂ« zbatohet pĂ«r analizimin e lidhjeve.
  • Mekanizmi i Modelit tĂ« Lejimeve Ă«shtĂ« pĂ«rmirĂ«suar dhe stabilizuar, duke lejuar kufizimin e aksesit nĂ« disa burime gjatĂ« ekzekutimit (p.sh., mund tĂ« ndalohet krijimi i proceseve fĂ«mijĂ«, t'i kufizohet aksesin pĂ«r tĂ« shkruar apo lexuar nĂ« disa pjesĂ« tĂ« sistemit tĂ« skedareve, tĂ« çaktivizohet shtesat). NĂ« vend tĂ« flamurit eksperimental «—experimental-permission» pĂ«r aktivizimin e Modelit tĂ« Lejimeve, tani mund tĂ« pĂ«rdoret flamuri «—permission».
  • Kapacitetet e modulit node:test (test_runner), i cili Ă«shtĂ« i dedikuar pĂ«r krijimin dhe ekzekutimin e testeve nĂ« gjuhĂ«n JavaScript, qĂ« kthejnĂ« rezultatet nĂ« formatin TAP (Test Anything Protocol), janĂ« zgjeruar. Moduli tani automatikisht pret pĂ«rfundimin e testeve tĂ« ngjashme pa pasur nevojĂ« pĂ«r pĂ«rdorimin e await.
  • Kompania HTTP undici Ă«shtĂ« pĂ«rditĂ«suar nĂ« versionin 7.x, ku Ă«shtĂ« rritur performanca dhe janĂ« shtuar mundĂ«si tĂ« reja HTTP.
  • Mekanizmi V8 Ă«shtĂ« pĂ«rditĂ«suar nĂ« versionin 13.6, i pĂ«rdorur nĂ« Chromium 136. Nga mundĂ«sitĂ« e reja nĂ« krahasim me botimin e kaluar tĂ« Node.js, vlen tĂ« pĂ«rmendet mbĂ«shtetje pĂ«r tabelat e tipizuara Float16Array, menaxhimi manual i burimeve, metoda RegExp.escape (ekranimi i vargjeve pĂ«r RegExp), treguesit 64-bit (Memory64) nĂ« WebAssembly, dhe metoda Error.isError.
  • Menaxheri i paketave NPM Ă«shtĂ« pĂ«rditĂ«suar nĂ« versionin 11.
  • MbĂ«shtetja pĂ«r kompiluesin MSVC Ă«shtĂ« ndĂ«rprerĂ«. PĂ«r kompilimin nĂ« platformĂ«n Windows, Ă«shtĂ« e nevojshme tĂ« pĂ«rdoret ClangCL.

Platforma Node.js mund të përdoret për mbështetje serverike të funksionimit të aplikacioneve Web, si dhe për krijimin e aplikacioneve të zakonshme klient-server. Për të zgjeruar funksionalitetin e aplikacioneve për Node.js, është përgatitur një koleksion i madh modulash, ku mund të gjenden module me implementime serverësh dhe klientë HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, module për integrimin me framework-e të ndryshme web, trajtues të WebSocket dhe Ajax, lidhës për DB (MySQL, PostgreSQL, SQLite, MongoDB), motorë të templativëve, engine CSS, implementime të algoritmeve kriptografikë dhe sisteme autorizimi (OAuth), parserë XML.

Për të trajtuar një numër të madh kërkesash paralel, Node.js përdor një model të asinkron të ekzekutimit të kodit, i bazuar në përpunimin e ngjarjeve në modalitetin jo-bllokues dhe përcaktimin e trajtuesve të kthimit (callback handlers). Metodat për multi-përçimin e lidhjeve përfshijnë epoll, kqueue, /dev/poll dhe select. Për multi-përçimin e lidhjeve përdoret libra libuv, e cila është një shtresë mbi libev në sistemet Unix dhe mbi IOCP në Windows. Për krijimin e një grupi threads (thread pool) përdoret biblioteka libeio, ndërsa për të kryer kërkesat DNS në modalitetin jo-bllokues integrohet c-ares. Të gjitha thirrjet sistemike që shkaktojnë bllokim kryhen brenda grupit të threads dhe pastaj, si dhe trajtuesit e sinjalit, kalojnë rezultatin e punës së tyre përsëri përmes një kanali të paemëruar (pipe).

Ekzekutimi i kodit JavaScript sigurohet përmes përdorimit të motorit V8 të zhvilluar nga kompania Google (për më tepër, Microsoft zhvillon një variant të Node.js me motorin Chakra-Core). Në thelb, Node.js është i ngjashëm me framework-et Perl AnyEvent, Ruby Event Machine, Python Twisted dhe implementimin e ngjarjeve në Tcl, por cikli i përpunimit të ngjarjeve (event loop) në Node.js është i fshehur nga zhvilluesi dhe i ngjan përpunimit të ngjarjeve në një aplikacion web që punon në shfletues.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster