Server-ẹgbẹ JavaScript Syeed Node.js 19.0 wa

Node.js 19.0, ipilẹ kan fun ṣiṣe awọn ohun elo nẹtiwọọki ni JavaScript, ti tu silẹ. Node.js 19 jẹ ẹka atilẹyin deede pẹlu awọn imudojuiwọn ti o wa titi di Oṣu Karun ọjọ 2023. Ni awọn ọjọ ti n bọ, imuduro ti ẹka Node.js 18 yoo pari, eyiti yoo gba ipo LTS ati pe yoo ṣe atilẹyin titi di Oṣu Kẹrin 2025. Itọju ẹka LTS ti tẹlẹ ti Node.js 16.0 yoo ṣiṣe titi di Oṣu Kẹsan 2023, ati ọdun ṣaaju ẹka LTS to kẹhin 14.0 titi di Oṣu Kẹrin 2023.

Awọn ilọsiwaju akọkọ:

  • Enjini V8 ti ni imudojuiwọn si ẹya 10.7, ti a lo ni Chromium 107. Lara awọn iyipada ninu ẹrọ ti a fiwe si ẹka Node.js 18, imuse ti ẹya kẹta ti Intl.NumberFormat API jẹ akiyesi, eyiti o ṣafikun awọn iṣẹ tuntun kikaRange (), formatRangeToParts() ati ki o yanRange (), kikojọpọ ti awọn eto, awọn aṣayan titun fun yipo ati eto konge, agbara lati tumọ awọn gbolohun ọrọ bi awọn nọmba eleemewa. Awọn igbẹkẹle to wa lhttp 8.1.0 ati npm 8.19.2 tun ti ni imudojuiwọn.
  • Aṣẹ idanwo “node-watch” ni a ti dabaa pẹlu imuse ti ipo iṣọ ti o rii daju pe ilana naa tun bẹrẹ nigbati faili ti a ko wọle ba yipada (fun apẹẹrẹ, ti “node -watch index.js” ba ti ṣiṣẹ, ilana naa yoo jẹ ṣiṣe. tun bẹrẹ laifọwọyi nigbati index.js yipada).
  • Fun gbogbo awọn asopọ HTTP/HTTPS ti njade, atilẹyin fun ẹrọ HTTP 1.1 Keep-Alive ti ṣiṣẹ, eyiti o jẹ ki asopọ ṣii fun akoko kan lati ṣe ilana ọpọlọpọ awọn ibeere HTTP laarin asopọ kanna. Keep-Alive ni a nireti lati ni ilọsiwaju ilosi ati iṣẹ. Nipa aiyipada, akoko ipari asopọ ti ṣeto si iṣẹju-aaya 5. Atilẹyin fun itupalẹ Jeki-Alive HTTP akọsori ni awọn idahun olupin ni a ti ṣafikun si imuse alabara HTTP, ati ge asopọ laifọwọyi ti awọn alabara ti ko ṣiṣẹ nipa lilo Jeki-Alive ti ṣafikun si imuse olupin HTTP Node.js.
  • WebCrypto API ni a ti gbe lọ si ẹka iduro, laisi awọn iṣẹ ni lilo Ed25519, Ed448, X25519 ati X448 algorithms. Lati wọle si module WebCrypto o le lo globalThis.crypto tabi beere ('node:crypto').webcrypto.
  • Atilẹyin fun DTrace, SystemTap ati ETW (Iṣẹlẹ Iṣẹlẹ fun Windows) awọn irinṣẹ wiwapa ti yọkuro, itọju eyiti a ka pe ko yẹ nitori idiju ti mimu rẹ di oni ni isansa ti eto atilẹyin to dara.

Syeed Node.js le ṣee lo mejeeji fun itọju olupin ti awọn ohun elo wẹẹbu ati fun ṣiṣẹda alabara deede ati awọn eto nẹtiwọọki olupin. Lati faagun iṣẹ ṣiṣe ti awọn ohun elo fun Node.js, akojọpọ nla ti awọn modulu ti pese, ninu eyiti o le wa awọn modulu pẹlu imuse HTTP, SMTP, XMPP, DNS, FTP, IMAP, awọn olupin POP3 ati awọn alabara, awọn modulu fun iṣọpọ pẹlu orisirisi awọn ilana wẹẹbu, WebSocket ati Ajax handlers , DBMS asopo (MySQL, PostgreSQL, SQLite, MongoDB), templating enjini, CSS enjini, awọn imuse ti crypto algoridimu ati ašẹ awọn ọna šiše (OAuth), XML parsers.

Lati rii daju sisẹ ti nọmba nla ti awọn ibeere ti o jọra, Node.js nlo awoṣe ipaniyan koodu asynchronous ti o da lori mimu iṣẹlẹ ti kii ṣe idilọwọ ati asọye ti awọn olutọju ipe. Awọn ọna ti a ṣe atilẹyin fun awọn asopọ pọpọ jẹ epoll, kqueue, /dev/poll, ati yan. Fun multixing asopọ, ile-ikawe libuv ti lo, eyiti o jẹ afikun fun libev lori awọn eto Unix ati IOCP lori Windows. Ile-ikawe libeio ni a lo lati ṣẹda adagun okun, ati c-ares ti ṣepọ lati ṣe awọn ibeere DNS ni ipo ti kii ṣe idinamọ. Gbogbo awọn ipe eto ti o fa idinamọ ni a ṣe ninu adagun okun ati lẹhinna, bii awọn oluṣakoso ifihan agbara, gbe abajade iṣẹ wọn pada nipasẹ paipu ti a ko darukọ (paipu). Awọn ipaniyan ti koodu JavaScript ti pese nipasẹ lilo ẹrọ V8 ti o dagbasoke nipasẹ Google (ni afikun, Microsoft n ṣe agbekalẹ ẹya Node.js pẹlu ẹrọ Chakra-Core).

Ni ipilẹ rẹ, Node.js jẹ iru si Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, ati imuse iṣẹlẹ iṣẹlẹ Tcl, ṣugbọn iṣẹlẹ iṣẹlẹ ni Node.js ti wa ni pamọ lati ọdọ olupilẹṣẹ ati ki o jọmọ mimu iṣẹlẹ ni ohun elo wẹẹbu nṣiṣẹ ni browser. Nigbati o ba kọ awọn ohun elo fun node.js, o nilo lati ṣe akiyesi awọn pato ti siseto-iṣẹlẹ, fun apẹẹrẹ, dipo ṣiṣe "var esi = db.query ("yan ...");" pẹlu idaduro fun ipari iṣẹ ati ṣiṣe atẹle ti awọn abajade, Node.js lo ilana ti ipaniyan asynchronous, ie. koodu naa ti yipada si "db.query ("yan ...", iṣẹ (abajade) {sisẹ abajade});", ninu eyiti iṣakoso yoo kọja lẹsẹkẹsẹ si koodu siwaju sii, ati pe abajade ibeere yoo ṣe ilana bi data ti de.

orisun: opennet.ru

Fi ọrọìwòye kun