Node.js-platformen 24.0.0 er offentliggjort

Node.js 24.0.0 er blitt lansert, en plattform for å kjøre nettapplikasjoner skrevet i JavaScript. Node.js 24.0 er klassifisert som en LTS-gren, men denne statusen vil bli tildelt først i oktober etter stabilisering. Støtte for Node.js 24.x vil vare til 30. april 2028. Vedlikehold av den forrige LTS-grenen Node.js 22.x vil vare til april 2027, og den før-første LTS-grenen 20.x til april 2026. Støtten for LTS-grenen 18.x ble avsluttet 30. april 2025, og den mellomliggende grenen Node.js 23.x vil bli avsluttet 1. juni 2025.

Hovedforbedringer:

  • I API AsyncLocalStorage er klassen AsyncContextFrame som standard aktivert, som er merket som stabil. AsyncContextFrame implementerer en mer effektiv mekanisme for sporing av asynkront kontekst, som betydelig kan forbedre ytelsen.
  • API URLPattern er nå tilgjengelig som et globalt objekt, som kan brukes uten eksplisitt import. URLPattern gir muligheter for å sjekke om en URL samsvarer med et bestemt mønster, noe som kan brukes til å analysere lenker.
  • Permission Model-mekanismen er forbedret og stabilisert for å begrense tilgang til bestemte ressurser under utførelsen (for eksempel kan man hindre opprettelse av barneprosesser, begrense skrive- eller leseadgang til bestemte deler av FS, og deaktivere tillegg). I stedet for det eksperimentelle flagget «—experimental-permission» for å aktivere Permission Model kan man nå bruke flagget «—permission».
  • Funksjonene til node:test-modulen (test_runner), som er ment for å opprette og kjøre tester skrevet i JavaScript, som returnerer resultatet i TAP-format (Test Anything Protocol), er utvidet. Modulen venter nå automatisk på at nestede tester skal fullføres uten behov for å bruke await.
  • HTTP-klienten undici er oppdatert til versjon 7.x, der ytelsen er forbedret og støtte for nye HTTP-muligheter er lagt til.
  • V8-motoren er oppdatert til versjon 13.6, brukt i Chromium 136. Blant de nye funksjonene sammenlignet med den forrige utgaven av Node.js er støtten for typede matriser Float16Array, manuell ressursstyring, metoden RegExp.escape (escaping av strenger for RegExp), 64-biters pekere (Memory64) i WebAssembly, og metoden Error.isError.
  • Pakkeadministratoren NPM er oppdatert til versjon 11.
  • Støtte for MSVC-kompilatoren er avsluttet. For kompilering på Windows-plattformen må ClangCL brukes.

Node.js-plattformen kan brukes både for serveradministrasjon av webapplikasjoner og for å lage vanlige klient- og serverside nettverksprogrammer. For å utvide funksjonaliteten til applikasjoner for Node.js er det utarbeidet en stor samling av moduler, der du kan finne moduler med implementasjoner servere og klienter for HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, moduler for integrasjon med ulike web-rammeverk, håndterere for WebSocket og Ajax, forbindelser til DBMS (MySQL, PostgreSQL, SQLite, MongoDB), malmotorer, CSS-motorer, implementasjoner av kryptografiske algoritmer og autorisasjonssystemer (OAuth), XML-parsere.

For processing a large number of parallel requests, Node.js utilizes an asynchronous model of code execution based on event-driven non-blocking I/O and the definition of callback handlers. Methods such as epoll, kqueue, /dev/poll, and select are supported for connection multiplexing. The libuv library, which builds on libev in Unix systems and IOCP in Windows, is used for connection multiplexing. A thread pool is created using the libeio library, and non-blocking DNS requests are integrated with c-ares. All system calls that cause blocking are executed within the thread pool and then return their results via an unnamed pipe, just like signal handlers.

Utføringen av JavaScript-kode skjer gjennom bruk av V8-motoren utviklet av Google (i tillegg utvikler Microsoft en versjon av Node.js med Chakra-Core-motoren). I sin kjerne er Node.js lik rammeverkene Perl AnyEvent, Ruby Event Machine, Python Twisted og hendelsesimplementeringen i Tcl, men hendelsesbehandlingssløyfen (event loop) i Node.js er skjult for utvikleren og ligner på hendelsesbehandling i et webapplikasjon som kjører i en nettleser.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster