Platforma Node.js 24.0.0 është publikuar

Kjo është lëshuar Node.js 24.0.0, platforma për ekzekutimin e aplikacioneve rrjetësore në gjuhën JavaScript. Node.js 24.0 i përket degëve me mbështetje afatgjatë, por ky status do t'i jepet vetëm në tetor, pas stabilizimit. Mbështetje për Node.js 24.x do të ofrohet deri më 30 prill 2028. Mbështetje për degën e mëparshme LTS Node.js 22.x do të vazhdojë deri në prillin e vitit 2027, ndërsa për degën e kaluar LTS 20.x deri në prillin e vitit 2026. Mbështetje për degën LTS 18.x u ndërpre më 30 prill 2025, ndërsa mbështetje për degën ndërmjetëse Node.js 23.x do të ndërpritet më 1 qershor 2025.

Përmirësimet kryesore:

  • NĂ« API AsyncLocalStorage, klasi AsyncContextFrame tani Ă«shtĂ« angazhuar si i stabilizuar. AsyncContextFrame implementon njĂ« mekanizĂ«m mĂ« efikas pĂ«r ndjekjen e kontekstit asinkron, qĂ« lejon njĂ« rritje tĂ« dukshme nĂ« performancĂ«.
  • API URLPattern tani Ă«shtĂ« nĂ« dispozicion si njĂ« objekt global, qĂ« mund tĂ« pĂ«rdoret pa u importuar qartĂ«. URLPattern ofron mundĂ«si pĂ«r tĂ« verifikuar pĂ«rputhjen e URL me njĂ« model tĂ« caktuar, qĂ« mund tĂ« pĂ«rdoret pĂ«r tĂ« analizuar lidhjet.
  • Mekanizmi i Modelit tĂ« Lejes Ă«shtĂ« pĂ«rmirĂ«suar dhe stabilizuar, duke lejuar kufizimin e qasshmĂ«risĂ« nĂ« resurse tĂ« caktuara gjatĂ« ekzekutimit (pĂ«r shembull, mund tĂ« ndalohet krijimi i proceseve fĂ«mijĂ«, kufizimi i qasshmĂ«risĂ« pĂ«r tĂ« shkruar ose lexuar nĂ« pjesĂ« tĂ« caktuara tĂ« sistemit tĂ« skedarĂ«ve, ndalimi i shtesave). NĂ« vend tĂ« flamurit eksperimental ‘—experimental-permission’ pĂ«r aktivizimin e Modelit tĂ« Lejes, tani mund tĂ« pĂ«rdoret flamuri ‘—permission’.
  • Kapacitetet e modulit node:test (test_runner), i destinuar pĂ«r krijimin dhe ekzekutimin e testeve nĂ« gjuhĂ«n JavaScript, janĂ« zgjeruar, duke kthyer rezultatet nĂ« formatin TAP (Test Anything Protocol). Moduli tani pret automatikisht pĂ«r pĂ«rfundimin e testeve tĂ« brendshme pa nevojĂ«n pĂ«r tĂ« pĂ«rdorur await.
  • Klienti HTTP undici Ă«shtĂ« azhurnuar nĂ« degĂ«n 7.x, ku Ă«shtĂ« pĂ«rmirĂ«suar performanca dhe janĂ« shtuar mbĂ«shtetje pĂ«r mundĂ«si tĂ« reja HTTP.
  • Motorri V8 Ă«shtĂ« azhurnuar nĂ« versionin 13.6, i pĂ«rdorur nĂ« Chromium 136. Disa nga mundĂ«sitĂ« e reja krahasuar me lĂ«shimin e kaluar tĂ« Node.js pĂ«rfshijnĂ« mbĂ«shtetje pĂ«r arrays tĂ« tipit Float16Array, menaxhimin manual tĂ« burimeve, metodĂ«n RegExp.escape (ekranimin e vargjeve pĂ«r RegExp), tregues 64-bit (Memory64) nĂ« WebAssembly dhe metodĂ«n Error.isError.
  • Menaxher i paketave NPM Ă«shtĂ« azhurnuar nĂ« versionin 11.
  • MbĂ«shtetja pĂ«r kompilatorin MSVC Ă«shtĂ« ndĂ«rprerĂ«. PĂ«r kompilim nĂ« platformĂ«n Windows, Ă«shtĂ« e nevojshme tĂ« pĂ«rdoret ClangCL.

Platforma Node.js mund të përdoret si për mbështetje të serverëve të aplikacioneve Web, ashtu edhe për të krijuar programe të zakonshme klients-server të rrjeteve. Për të zgjeruar funksionalitetin e aplikacioneve për Node.js është përgatitur një koleksion i madh modulash, ku mund të gjeni module me realizim. serverëve dhe klientë HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, module për integrim me korniza të ndryshme web, procesorë WebSocket dhe Ajax, lidhës për DB (MySQL, PostgreSQL, SQLite, MongoDB), motorë për modelim, CSS, realizime të algoritmeve kriptografikë dhe sistemeve të autorizimit (OAuth), parserë XML.

Për të trajtuar një numër të madh kërkesash paralelisht, Node.js përdor një model asinkron të ekzekutimit të kodit, i bazuar në përpunimin e ngjarjeve në modalitetin e pa bllokimit dhe përcaktimin e menaxherëve të kthimit (callbacks). Metoda të tilla si epoll, kqueue, /dev/poll dhe select mbështeten për shumëfishimin e lidhjeve. Për këtë, përdoret biblioteka libuv, që është një shtresë mbi libev në sistemet Unix dhe mbi IOCP në Windows. Biblioteka libeio përdoret për të krijuar një grup (thread pool), dhe c-ares është integruar për të kryer kërkesat DNS në modalitetin e pa bllokimit. Të gjitha thirrjet sistemike që shkaktojnë bllokim ekzekutohen brenda grupit dhe pastaj, si menaxherët e sinjaleve, kthejnë rezultatin e punës së tyre përmes një kanali të paemëruar (pipe).

Ekzekutimi i kodit JavaScript sigurohet përmes aktivizimit të motorit V8 të zhvilluar nga Google (për më tepër, Microsoft po zhvillon një variant 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ë funksionon në shfletues.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster