Node.js 24.0.0-platformen er udgivet

Node.js 24.0.0, en platform til at køre netværksapplikationer i JavaScript, er blevet udgivet. Node.js 24.0 er tildelt langsigtede supportgrene, men denne status vil først blive tildelt i oktober efter stabilisering. Node.js 24.x vil blive understøttet indtil 30. april 2028. Den tidligere LTS-gren Node.js 22.x vil blive understøttet indtil april 2027, og den tidligere LTS-gren 20.x vil blive understøttet indtil april 2026. Vedligeholdelsen af ​​18.x LTS-grenen slutter den 30. april 2025, og den mellemliggende gren Node.js 23.x slutter den 1. juni 2025.

Vigtigste forbedringer:

  • AsyncLocalStorage API'en bruger som standard AsyncContextFrame-klassen, som er markeret som stabil. AsyncContextFrame implementerer en mere effektiv mekanisme til sporing af asynkron kontekst, hvilket kan forbedre ydeevnen betydeligt.
  • URLPattern API'en er nu tilgængelig som et globalt objekt, der kan bruges uden eksplicit import. URLPattern giver mulighed for at kontrollere, om en URL matcher et specifikt mønster, hvilket for eksempel kan bruges til at analysere links.
  • Tilladelsesmodellens mekanisme er blevet forbedret og stabiliseret, så du kan begrænse adgangen til bestemte ressourcer under udførelse (for eksempel kan du forbyde oprettelsen af ​​underprocesser, begrænse adgangen til skrivning eller læsning til bestemte dele af FS, deaktivere tilføjelser). I stedet for det eksperimentelle flag "--experimental-permission" kan flaget "--permission" nu bruges til at aktivere tilladelsesmodellen.
  • Funktionerne i node:test-modulet (test_runner), der er designet til at oprette og køre tests i JavaScript, der returnerer resultater i TAP-format (Test Anything Protocol), er blevet udvidet. Modulet venter nu automatisk på, at indbyggede tests fuldføres, uden at det er nødvendigt at bruge await.
  • HTTP-klienten undici er blevet opdateret til 7.x-grenen, hvilket forbedrer ydeevnen og tilføjer understøttelse af nye HTTP-funktioner.
  • V8-motoren er blevet opdateret til version 13.6, som bruges i Chromium 136. Nye funktioner sammenlignet med den tidligere Node.js-udgivelse inkluderer understøttelse af typede Float16Array-arrays, manuel ressourcehåndtering, RegExp.escape-metoden (escape-strenge for RegExp), 64-bit pointere (Memory64) i WebAssembly og Error.isError-metoden.
  • NPM-pakkehåndteringen er blevet opdateret til version 11.
  • Understøttelse af MSVC-compiler er udgået. Til kompilering på platformen Windows Du skal bruge ClangCL.

Node.js-platformen kan bruges både til server-side support af webapplikationer og til at oprette standard klient- og server-side netværksprogrammer. For at udvide funktionaliteten af ​​Node.js-applikationer er der udarbejdet en stor samling af moduler, herunder dem der implementerer servere og klienter til HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, moduler til integration med forskellige webframeworks, WebSocket- og Ajax-handlere, forbindelser til DBMS (MySQL, PostgreSQL, SQLite, MongoDB), skabelonmotorer, CSS-motorer, implementeringer af kryptografiske algoritmer og autorisationssystemer (OAuth), XML-parsere.

For at håndtere et stort antal samtidige anmodninger bruger Node.js en asynkron kodeeksekveringsmodel baseret på ikke-blokerende hændelsesbehandling og callback-handlere. Understøttede forbindelsesmultiplekseringsmetoder inkluderer epoll, kqueue, /dev/poll og select. Forbindelsesmultipleksering bruger libuv-biblioteket, som er en udbygning af libev på Unix-systemer og IOCP på ... WindowsLibeio-biblioteket bruges til at oprette en trådpulje, og c-ares er integreret til at udføre DNS-forespørgsler i ikke-blokerende tilstand. Alle blokerende systemkald udføres i trådpuljen og returnerer derefter, ligesom signalhåndterere, deres resultater via en unavngiven pipe.

Udførelse af JavaScript-kode sikres ved brug af V8-motoren udviklet af Google (derudover udvikler Microsoft en version af Node.js med Chakra-Core-motoren). I sin kerne ligner Node.js Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks og implementeringen af ​​begivenheder i Tcl, men begivenhedsløkken i Node.js er skjult for udvikleren og ligner begivenhedsbehandling i en webapplikation kører i browser.

Kilde: opennet.ru

Køb pålidelig hosting til websteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster