Sèvè-bò JavaScript Node.js 13.0 lage

Disponib lage Node.js 13.0,platfòm pou kouri aplikasyon rezo nan JavaScript. An menm tan an, estabilizasyon nan branch anvan an nan Node.js 12.x te konplete, ki te transfere nan kategori a nan degaje sipò alontèm, mizajou pou ki lage pou 4 ane. Sipò pou branch LTS anvan Node.js 10.0 la pral dire jiska avril 2021, ak sipò pou dènye branch LTS 8.0 la jiska janvye 2020.

Prensipal la amelyorasyon:

  • Motè V8 mete ajou nan vèsyon an 7.8, ki sèvi ak nouvo teknik optimize pèfòmans, amelyore destriktirasyon objè, diminye konsomasyon memwa, epi redwi tan preparasyon pou ekzekisyon WebAssembly;
  • Sipò konplè pou entènasyonalizasyon ak Unicode ki baze sou bibliyotèk pèmèt pa default ICU (Konpozan entènasyonal pou Unicode), ki pèmèt devlopè yo ekri kòd ki bay sipò travay ak diferan lang ak lokal. Modil plen-icu kounye a enstale pa default;
  • API estabilize Travayè Fil, pèmèt kreye bouk evènman milti-threaded. Aplikasyon an baze sou modil worker_threads, ki pèmèt ou kouri kòd JavaScript nan plizyè fil paralèl. Gen sipò ki estab pou Workers Threads API tou te backported nan branch LTS nan Node.js 12.x;
  • Kondisyon pou platfòm yo te ogmante. Pou rasanble kounye a egzije omwen macOS 10.11 (mande Xcode 10), AIX 7.2, Ubuntu 16.04, Debian 9, EL 7, Alpine 3.8, Windows 7/2008;
  • Amelyore sipò pou Python 3. Si sistèm nan gen tou de Python 2 ak Python 3, Python 2 toujou itilize, men yo te ajoute kapasite nan bati lè sèlman Python 3 enstale sou sistèm nan;
  • Ansyen aplikasyon HTTP parser ("—http-parser=legacy") yo te retire. Retire oswa depreche apèl ak pwopriyete FSWatcher.prototype.start(), ChildProcess._channel, open() metòd nan ReadStream ak WriteStream objè, request.connection, response.connection, module.createRequireFromPath ();
  • Swivan soti aktyalizasyon 13.0.1, ki byen vit fikse plizyè ensèk. An patikilye, pwoblèm nan ak npm 6.12.0 ki montre yon avètisman sou lè l sèvi avèk yon vèsyon ki pa sipòte yo te rezoud.

Se pou nou sonje ke platfòm la Node.js ka itilize tou de pou sipò sèvè nan aplikasyon entènèt ak pou kreye kliyan òdinè ak pwogram rezo sèvè. Pou elaji fonctionnalités aplikasyon pou Node.js, yon gwo kantite koleksyon modil, nan ki ou ka jwenn modil ak aplikasyon an nan sèvè ak kliyan HTTP, SMTP, XMPP, dns, ftp, IMAP, POP3, modil pou entegrasyon ak kad entènèt divès kalite, WebSocket ak Ajax okipe, konektè nan DBMS (MySQL, PostgreSQL, SQLite). , MongoDB ), motè modèl, motè CSS, aplikasyon algoritm kriptografik ak sistèm otorizasyon (OAuth), analizeur XML.

Pou okipe yon gwo kantite demann paralèl, Node.js sèvi ak yon modèl ekzekisyon kòd asynchrone ki baze sou pwosesis evènman ki pa bloke ak defini moun kap okipe apèl. Metòd ki sipòte pou koneksyon multiplexage yo enkli epoll, kqueue, /dev/poll, epi chwazi. Bibliyotèk la itilize pou koneksyon multiplex libuv, ki se yon sipèstrikti sou libev sou sistèm Unix ak sou IOCP sou Windows. Yo itilize yon bibliyotèk pou kreye yon pisin fil libeio, pou fè demann DNS nan mòd ki pa bloke se entegre c-ares. Tout apèl sistèm ki lakòz bloke yo egzekite nan pisin nan fil epi answit, tankou moun k ap okipe siyal yo, pase rezilta travay yo tounen nan yon tiyo san non. Egzekisyon kòd JavaScript asire atravè itilizasyon yon motè Google devlope V8 (Anplis de sa, Microsoft ap devlope yon vèsyon Node.js ak motè Chakra-Core).

Nan nwayo li yo, Node.js sanble ak kad Perl AnyEvent, Machin Evènman Ruby, Piton trese и aplikasyon evènman nan Tcl, men bouk evènman an nan Node.js kache nan pwomotè a epi li sanble ak manyen evènman nan yon aplikasyon entènèt ki kouri nan yon navigatè. Lè w ap ekri aplikasyon pou node.js, li nesesè pou w pran an kont spesifik pwogramasyon ki baze sou evènman an, pa egzanp, olye pou w fè "var result = db.query ("select..");" ak ap tann pou fini an nan travay ak pwosesis ki vin apre nan rezilta yo, Node.js sèvi ak prensip la nan ekzekisyon asynchrone, i.e. se kòd la transfòme nan "db.query ("select..", fonksyon (rezilta) {pwosesis rezilta});", nan ki kontwòl pral imedyatman pase nan plis kòd, epi rezilta rechèch la pral trete kòm done rive. .

Sous: opennet.ru

Add nouvo kòmantè