De Node.js 24.0.0 platform is uitgebracht

De release van Node.js 24.0.0, een platform voor het uitvoeren van netwerkanwendungen in JavaScript, heeft plaatsgevonden. Node.js 24.0 wordt geklasseerd als een versie met langdurige ondersteuning, maar deze status wordt pas in oktober toegekend, na stabilisatie. De ondersteuning voor Node.js 24.x loopt tot 30 april 2028. De ondersteuning van de vorige LTS-versie Node.js 22.x duurt tot april 2027, en de voorlaatste LTS-versie 20.x tot april 2026. De ondersteuning voor de LTS-versie 18.x is geƫindigd op 30 april 2025, terwijl de ondersteuning voor de intermƩdiaire Node.js 23.x versie eindigt op 1 juni 2025.

Belangrijkste verbeteringen:

  • In de API AsyncLocalStorage is de AsyncContextFrame-klasse standaard ingeschakeld, die als stabiel wordt gemarkeerd. AsyncContextFrame implementeert een efficiĆ«nter mechanisme voor het volgen van de asynchrone context, wat de prestaties aanzienlijk verbetert.
  • De API URLPattern is nu beschikbaar als een globaal object dat zonder expliciete import kan worden gebruikt. URLPattern biedt mogelijkheden voor het controleren van overeenstemming van een URL met een bepaald patroon, wat bijvoorbeeld kan worden gebruikt voor het parseren van links.
  • Het Permission Model is verbeterd en gestabiliseerd, waardoor de toegang tot bepaalde middelen tijdens uitvoering kan worden beperkt (bijvoorbeeld het kan verboden worden om kindprocessen te maken, toegang tot schrijven of lezen naar bepaalde delen van het bestandssysteem te beperken, of extensies uit te schakelen). In plaats van de experimentele vlag "—experimental-permission" om het Permission Model in te schakelen, kan nu de vlag "—permission" worden gebruikt.
  • De mogelijkheden van de module node:test (test_runner), bedoeld voor het creĆ«ren en uitvoeren van tests in JavaScript, die resultaten in TAP (Test Anything Protocol) formaat teruggeven, zijn uitgebreid. De module wacht nu automatisch op de voltooiing van geneste tests zonder dat "await" nodig is.
  • De HTTP-client undici is bijgewerkt naar de 7.x tak, waarin de prestaties zijn verbeterd en ondersteuning is toegevoegd voor nieuwe HTTP-mogelijkheden.
  • De V8-engine is bijgewerkt naar versie 13.6, zoals toegepast in Chromium 136. Ten opzichte van de vorige release van Node.js zijn de nieuwe mogelijkheden zoals ondersteuning voor getypeerde arrays Float16Array, handmatig resourcebeheer, de methode RegExp.escape (voor het ontsnappen van strings voor RegExp), 64-bits pointers (Memory64) in WebAssembly en de methode Error.isError opgemerkt.
  • De pakketbeheerder NPM is bijgewerkt naar versie 11.
  • De ondersteuning voor de MSVC-compiler is beĆ«indigd. Om te compileren op het Windows-platform moet ClangCL worden gebruikt.

Het Node.js-platform kan worden gebruikt voor zowel serverondersteuning van webapplicaties als voor het creƫren van reguliere client- en servernetwerkprogramma's. Voor de uitbreiding van de functionaliteit van toepassingen voor Node.js is er een grote collectie modules beschikbaar, waar je modules kunt vinden met implementatie van servers en clients voor HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, modules voor integratie met verschillende webframeworks, WebSocket en Ajax handlers, connectoren naar databases (MySQL, PostgreSQL, SQLite, MongoDB), template-engines, CSS-engines, implementaties van cryptografie en autorisatiesystemen (OAuth), XML-parsers.

Voor de verwerking van een groot aantal gelijktijdige aanvragen maakt Node.js gebruik van een asynchrone code-uitvoeringsmodel, gebaseerd op event-driven niet-blokkerende modus en het definiëren van callback handlers. Als methoden voor het multiplexeren van verbindingen worden technieken zoals epoll, kqueue, /dev/poll en select ondersteund. Voor het multiplexeren van verbindingen wordt de libuv-bibliotheek gebruikt, die een abstractielaag biedt boven libev in Unix-systemen en boven IOCP in Windows. Voor het creëren van een threadpool wordt de libeio-bibliotheek ingeschakeld, en voor het uitvoeren van DNS-aanvragen in niet-blokkerende modus is c-ares geïntegreerd. Alle systeemaanroepen die blokkering veroorzaken, worden uitgevoerd binnen de threadpool en sturen, net als signal handlers, het resultaat van hun werk terug via een ongeïnitialiseerde buis (pipe).

De uitvoering van JavaScript-code wordt mogelijk gemaakt door de V8-engine die is ontwikkeld door Google (bovendien ontwikkelt Microsoft een versie van Node.js met de Chakra-Core-engine). In wezen lijkt Node.js op de frameworks Perl AnyEvent, Ruby Event Machine, Python Twisted en de evenementenimplementatie in Tcl, maar de event loop in Node.js is verborgen voor de ontwikkelaar en lijkt op de gebeurtenisverwerking in een webapplicatie die in een browser draait.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster