Ilmus Node.js 26.0.0, platvorm, mis on mÔeldud JavaScripti pÔhiste vÔrgurakenduste kÀitamiseks. Node.js 26.0 kuulub pikaajalise toe harudesse, kuid see staatus omandatakse alles oktoobris, pÀrast stabiliseerimist. Node.js 26.x toetust pakutakse kuni 2029. aasta maini. Eelmise LTS-haru Node.js 24.x toetust pakutakse kuni 30. aprillini 2028, ning eel-eelmine 22.x kuni 30. aprillini 2027. LTS-haru 20.x toetamine lÔpetatakse 30. aprillil 2026, ning vahepealse Node.js 25.x toe lÔppkuupÀev on 1. juuni 2026.
Peamised tÀiustused:
- Vaikimisi on lisatud API Temporal, mis pakub alternatiivset meetodite kogumit kuupĂ€evade ja aegade töötlemiseks. API vĂ”imaldab kuupĂ€evadega manipuleerimist nii ajavööndiga arvestatuna kui ka ilma selleta, aja konverteerimist, vĂ€ljundi vormindamist ja aja aritmeetilisi operatsioone. Aeg vĂ”ib olla mÀÀratletud sĂ”ltumatu ajavööndita kujul (Temporal.PlainDate, Temporal.PlainTime, Temporal.PlainDateTime), ajavööndiga seotud kujul (Temporal.ZonedDateTime) ja epohhi esitusviisina (Temporal.Instant â nanosekundite arv 1. jaanuarist 1970).
- V8 mootor on uuendatud versioonile 14.6, mis on rakendatud Chromiumis 146. Node.js eelmisest vĂ€ljaandest on parendustest mĂ€rgitud vĂ”imalus ĂŒhendada mitu iteratoori ĂŒhte, kasutades meetodit Iterator.concat(), samuti spetsiifikatsiooni "upsert" rakendamine, et lihtsustada vĂ”tmevÀÀrtuse paaride kogumitega töötamist JavaScripti objektides Map ja WeakMap.
- HTTP klient undici on uuendatud harule 8.x.
- Eemaldatud meetod http.Server.prototype.writeHeader(), mille asemel tuleks kasutada http.Server.prototype.writeHead().
Node.js platvormi saab kasutada nii veebirakenduste serveripoolseks toe tagamiseks kui ka tavaliste klient-serveri vĂ”rgurakenduste loomiseks. Node.js jaoks on vĂ€lja töötatud suur moodulite kogumik, kust leiate mooduleid, mis hĂ”lmavad serverid HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 kliente, mooduleid erinevate veebiraamistike integreerimiseks, WebSocket ja Ajax töötlejat, andmebaasi ĂŒhendusi (MySQL, PostgreSQL, SQLite, MongoDB), malligeneraatorid, CSS-mootorid, krĂŒptoalgoritmide rakendused ja autentimissĂŒsteemid (OAuth), XML-parsereid.
Node.js kasutab suurt hulka samaaegsete pĂ€ringute töötlemiseks asĂŒnkroonset koodimudelit, mis pĂ”hineb mittesidetavate sĂŒndmuste töötlemisel ja callback-töötlejate mÀÀramisel. Ăhenduste multiplexerimismeetodite hulka kuuluvad sellised meetodid nagu epoll, kqueue, /dev/poll ja select. Ăhenduste multiplexerimiseks kasutatakse libuv teeki, mis on Unixis libev ja Windowsis IOCP peal. Töötajate grupi (thread pool) loomiseks kasutatakse libeio teeki ning mittesidetavaks DNS-pĂ€ringute tĂ€itmiseks on integreeritud c-ares. KĂ”ik sĂŒsteemikutsed, mis pĂ”hjustavad blokeerimist, tehakse töötajate grupis ja seejĂ€rel edastavad need, nagu ka signaalide töötlejad, oma töö tulemuse tagasi kaudu nimetamata toru (pipe).
JavaScripti koodi tĂ€itmine toimub Google'i loodud V8 mootori kaudu. Node.js on sisult sarnane Perl AnyEvent, Ruby Event Machine, Python asyncio ja Tcl sĂŒndmuste teostustega, kuid Node.js sĂŒndmustöötluse tsĂŒkkel (event loop) on arendaja eest peidetud ja sarnaneb sĂŒndmuste töötlemisega veebirakenduses, mis töötab brauseris.
Allikas: opennet.ru
