Node.JS

A Node.js egy nyílt forráskódú, platformokon átívelő JavaScript futási idő, amely szervereken fut. A 2009-es megjelenése óta ez a platform rendkívül népszerűvé vált, és napjainkban nagyon fontos szerepet játszik a webfejlesztés területén.
A teljes cikk a Node.JS oldalon található ...

Szűrő megjelenítése
Szűrők tárolása
A2 Themes & Host Me Filter

Operációs rendszer

Lemez terület

RAM memória

Lemez típusa

CPU magok

Fajta

Pontszám - 0
RedSwitches Logo
RedSwitches

RedSwitches

Pearl
$6.94 /Havi


Kiszolgáló helyei


RedSwitches Servers in NetherlandsHollandia RedSwitches Servers in UnionEgyesült Államok RedSwitches Servers in MelbourneAusztrália RedSwitches Servers in MumbaiIndia RedSwitches Servers in GermanyNémetország
Összehasonlítás
Pontszám - 0
Hostarina Logo
Hostarina

Hostarina

Personal
$2.92 /Havi


Kiszolgáló helyei


Hostarina Servers in UnionEgyesült Államok Hostarina Servers in RawalpindiPakisztán Hostarina Servers in MunichNémetország
Összehasonlítás
Pontszám - 0
Net9 Oy Logo
Net9 Oy

Net9 Oy

Small
$1.13 /Havi


Kiszolgáló helyei


Net9 Oy Servers in StockholmSvédország Net9 Oy Servers in HelsinkiFinnország Net9 Oy Servers in ParisFranciaország
Összehasonlítás
Pontszám - 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Havi


Kiszolgáló helyei


Heroku Servers in United StatesEgyesült Államok
Összehasonlítás
Pontszám - 0
Awareindia.net Logo
Awareindia.net

Awareindia.net

Linux Hosting Plan G
$5.83 /Havi

Összehasonlítás
Pontszám - 0
Chemi Cloud Logo
Chemi Cloud

Chemi Cloud

Ionic
$2.95 /Havi


Kiszolgáló helyei


Chemi Cloud Servers in BangaloreIndia Chemi Cloud Servers in New YorkEgyesült Államok Chemi Cloud Servers in BucharestRománia Chemi Cloud Servers in LondonEgyesült Királyság Chemi Cloud Servers in AmsterdamHollandia Chemi Cloud Servers in TorontoKanada Chemi Cloud Servers in SydneyAusztrália
Összehasonlítás
Pontszám - 0
Oudel Logo
Oudel

Oudel

cPanel Hosting 1
$5.95 /Havi


Kiszolgáló helyei


Oudel Servers in UnionEgyesült Államok
Összehasonlítás

 

Node.js

 

 

A Node.js egy nyílt forráskódú, platformokon átívelő JavaScript futási idő, amely szervereken fut. A 2009-es megjelenése óta ez a platform rendkívül népszerűvé vált, és napjainkban nagyon fontos szerepet játszik a webfejlesztés területén. Ha figyelembe vesszük a csillagok számát, amelyet egy projekt a GitHubon gyűjtött, mint a népszerűség mutatóját, akkor a Node.js, amelynek több mint 50 000 csillagja van, nagyon-nagyon népszerű projekt.

 

A Node.js platform a Google V8 JavaScript motorjára épül, amelyet a Google Chrome böngészőben használnak. Ezt a platformot elsősorban webszerverek létrehozására használják, de hatóköre nem korlátozódik erre.

 

Nézzük meg a Node.js főbb jellemzőit.

 

Sebesség

 

A Node.js egyik fő látványossága a sebesség. A Node.js-ben futtatott JavaScript-kód kétszer gyorsabb lehet, mint a lefordított nyelveken, például C vagy Java, írt kód, és nagyságrendekkel gyorsabb, mint az értelmezett nyelvek, például a Python vagy a Ruby. Ennek oka a platform nem blokkoló architektúrája, és a konkrét eredmények az alkalmazott referenciaértékektől függenek, de összességében a Node.js egy nagyon gyors platform.

 

Egyszerűség

 

A Node.js platform könnyen megtanulható és használható. Valójában egyenesen nagyon egyszerű, különösen összehasonlítva más szerverplatformokkal.

 

JavaScript

 

A JavaScript a Node.js környezetben fut. Ez azt jelenti, hogy a front-end fejlesztők milliói, akik már használják a böngészőben a JavaScript-et, mind a szerveroldali, mind az ügyféloldali kódot ugyanazon programozási nyelven írhatják, anélkül, hogy egy teljesen új eszközt kellene megtanulniuk a szerveroldali fejlesztéshez.

 

A böngésző és a szerver ugyanazokat a nyelvi fogalmakat használja. Ezenkívül a Node.js gyorsan áttérhet az új ECMAScript szabványokra, amint azokat a platformon megvalósítják.

 

Nem kell megvárni, amíg a felhasználók frissítik a böngészőjüket, mivel a Node.js egy szerveroldali környezet, amely teljes mértékben a fejlesztő irányítását biztosítja. Ennek eredményeként új nyelvi funkciók válnak elérhetővé a Node.js támogató verziójának telepítésekor.

 

V8 motor

 

A Node.js középpontjában áll, többek között a Google nyílt forráskódú V8 JavaScript-motorja, amelyet a Google Chrome és más böngészőkben használnak. Ez azt jelenti, hogy a Node.js mérnökök ezreit veszi igénybe, akik hihetetlenül gyorsan elkészítették a JavaScript Chrome futást, és tovább dolgoznak a V8 fejlesztésén.

 

Aszinkron

 

A hagyományos programozási nyelvekben (C, Java, Python, PHP) minden utasítás alapértelmezés szerint blokkolásra kerül, kivéve, ha a fejlesztő kifejezetten gondoskodik a kód aszinkron végrehajtásáról. Ennek eredményeként, ha például egy ilyen környezetben hálózati kérelmet nyújt be valamilyen JSON-kód letöltésére, akkor a folyam végrehajtása fel lesz függesztve, ahonnan a kérést megkapja és feldolgozza.

 

A JavaScript sokkal megkönnyíti az aszinkron és nem blokkoló kód írását egyetlen szál, visszahívások és eseményvezérelt fejlesztési megközelítés segítségével. Valahányszor nehéz műveletet kell végrehajtanunk, visszahívást küldünk a megfelelő mechanizmusnak, amelyet a művelet befejezése után azonnal felhívunk. Ennek eredményeként nem kell megvárni az ilyen műveletek eredményeit, hogy a program tovább működjön.

 

Hasonló mechanizmus a böngészőkből származik. Nem engedhetjük meg magunknak, hogy várjunk mondjuk egyAJAXkérés befejezni anélkül, hogy képes lenne reagálni a felhasználói műveletekre, például a gombokra történő kattintásokra. Annak érdekében, hogy a felhasználók számára kényelmes legyen a weboldalak használata, mindennek, mind az adatok letöltéséről a hálózatról, mind a gombok kattintásainak feldolgozására, egyszerre, valós időben kell történnie.

 

Ha már létrehozott egy gombnyomással történő eseménykezelőt, akkor már használt aszinkron programozási technikákat.

 

Az aszinkron mechanizmusok lehetővé teszik, hogy egyetlen Node.js szerver egyszerre több ezer kapcsolatot kezeljen anélkül, hogy a programozót szálkezeléssel és párhuzamos kódfuttatási feladatokkal terhelné. Az ilyen dolgok gyakran hibaforrások.

 

A Node.js a fejlesztőt nem blokkoló alapvető I / O mechanizmusokkal látja el, és általában a Node.js keretrendszerben használt könyvtárak nem blokkoló paradigmák segítségével íródnak.Ezáltal a viselkedés blokkolása inkább kivétel, mint norma.

 

Amikor a Node.js-nek I / O műveletet kell végrehajtania, például adatok betöltése a hálózatról, hozzáférés egy adatbázishoz vagy a fájlrendszerhez, ahelyett, hogy blokkolná a fő szálat, várva egy ilyen művelet eredményét, a Node.js megkezdi a végrehajtását, és folytasson más dolgokat, amíg meg nem kapják a művelet eredményeit.

 

Könyvtárak

 

A Node.js npm nevű csomagkezelőjével való együttműködés egyszerűsége és kényelme a Node.js ökoszisztéma virágzik. Most már több mint félmillió nyílt forráskódú csomag található az npm rendszerleíró adatbázisban, amelyet bármely Node.js fejlesztő szabadon használhat.

 

Miután áttekintette a Node.js platform néhány fő jellemzőjét, próbáljuk ki működés közben. Kezdjük a telepítéssel.

 

 

Node.js

 

 

A Node.js telepítése

 

A Node.js sokféle módon telepíthető, amelyeket egy pillanat alatt lefedünk. Tehát az összes fontosabb platform hivatalos telepítési csomagja megtalálható.

 

Van még egy nagyon kényelmes módszer a Node.js telepítésére, amely az operációs rendszerben biztosított csomagkezelő használata. Például a macOS csomagkezelőt, amely ezen a területen de facto szabvány, Homebrew-nak hívják.

 

Ha van ilyen a rendszerén, akkor a Node.js telepítéséhez futtassa ezt a parancsot a parancssoron:

 

brew install csomópont

 

Az egyéb operációs rendszerek, köztük a Linux és a Windows csomagkezelőinek listája itt található.

 

A Node.js népszerű verziókezelője az nvm. Ez az eszköz lehetővé teszi, hogy kényelmesen váltson a Node.js különböző verziói között, segítségével például telepítheti és kipróbálhatja a Node.js új verzióját, majd szükség esetén visszatérhet a régire. Az Nvm abban az esetben is hasznos, amikor tesztelnie kell egy kódot a Node.js régi verzióján.

 

A kezdők számára a hivatalos Node.js telepítők használata. MacOS felhasználók számára javasoljuk a Node.js telepítését a Homebrew használatával. Most, hogy telepítette a Node.js fájlt, itt az ideje írni a „Hello World” szót.

 

Első Node.js alkalmazás

 

Az első Node.js alkalmazás leggyakoribb példája egy egyszerű webszerver. Itt van a kódja:

const http = igény ('http')

const hosztnév = '127.0.0.1'

const port = 3000

const szerver = http.createServer ((req, res) = & gt; {

res.statusCode = 200

res.setHeader ('Tartalom-típus', 'szöveg / sima')

res.end ('Hello World \ n')

})

server.listen (port, hosztnév, () = & gt; {

console.log (`A szerver fut: http: // $ {hostname}: $ {port} /`)

})

 

A kód futtatásához mentse el egy server.js fájlba, és futtassa a következő parancsot a terminálon:

 

csomópont server.js

 

A kiszolgáló ellenőrzéséhez nyisson meg egy böngészőt, és írja be a címsávba a http://127.0.0.1:3000 címet, vagyis azt a kiszolgáló címet, amely a konzolon jelenik meg a sikeres elindítása után. Ha minden úgy működik, ahogy kell, az oldalon a "Hello World" felirat jelenik meg.

 

Nézzük meg ezt a példát.

 

Először vegye figyelembe, hogy a kód tartalmazza a HTTP modul csatlakoztatására vonatkozó parancsot.

 

A Node.js platform kiváló szabványos modulkészlettel rendelkezik, amely jól fejlett mechanizmusokat tartalmaz a hálózattal való együttműködéshez.

A createServer () objektum metódus létrehoz egy új HTTP kiszolgálót, és visszaadja azt.

 

A szerver úgy van konfigurálva, hogy egy adott gazdagép adott portján hallgasson. Amikor a szerver készen áll, a megfelelő visszahívást hívják meg, és tájékoztatnak minket arról, hogy a szerver fut.

Amikor a kiszolgáló kérést kap, egy eseményt indít, amely két objektumot tartalmaz. Az első a kérés (req, a http.IncomingMessage objektum), a második a válasz (res, a http.ServerResponse objektum). Ezek a legfontosabb kérelmek a HTTP kérések kezelésére.

 

Az első információt nyújt nekünk a kérelemről. Egyszerű példánkban nem használjuk ezeket az adatokat, de szükség esetén az objektum használatával hozzáférhet a kérés fejlécéhez és a benne átadott adatokhoz.

 

A másodikra ​​a kérelemre való válasz kialakításához és elküldéséhez van szükség.

 

Ebben az esetben a megkeresésre a következőképpen formáljuk a választ. Először a tulajdonság állapotkódját 200 értékre állítottuk be, ami a sikeres műveletet jelzi:

 

res.statusCode = 200

Ezután beállítjuk a Content-Type címet:

res.setHeader ('Tartalom-típus', 'szöveg / sima')

Ezután befejezzük a válasz előkészítését úgy, hogy annak tartalmát argumentumként hozzáadjuk a metódus végéhez ():

res.end ('Hello World \ n')

 

Már említettük, hogy a Node.js platform körül hatalmas ökoszisztéma alakult ki. Beszéljünk most a Node.js néhány népszerű keretrendszeréről és segítő eszközéről

 

Keretek és segítőeszközök a Node.js fájlhoz

 

A Node.js egy alacsony szintű platform. A fejlesztés egyszerűsítése és a programozók életének megkönnyítése érdekében hatalmas számú könyvtárat hoztak létre. Néhány közülük az idő múlásával nagyon népszerűvé vált. Itt van egy kis lista azokról a könyvtárakról, amelyek véleményem szerint jól sikerültek és érdemes felfedezni:

 

Expressz: Ez a könyvtár rendkívül egyszerű, ugyanakkor hatékony eszközt biztosít a fejlesztőnek a webszerverek felépítéséhez. Az Express sikerének kulcsa a minimalista megközelítés és az alapvető kiszolgálóoldali mechanizmusokra való összpontosítás volt, anélkül, hogy megpróbálta volna az "egyablakos" szerverarchitektúrát elképzelni.

 

Meteor: Ez egy erőteljes, teljes veremű keretrendszer, amely izomorf megközelítést alkalmaz a JavaScript-alkalmazások fejlesztésére, és kódot használ mind az ügyfélen, mind a szerveren. Valaha a Meteor önálló eszköz volt, amely mindent tartalmaz, amelyre egy fejlesztőnek szüksége lehet. Most már integrálódik olyan frontend könyvtárakkal is, mint a React, a Vue és az Angular. A Meteor a közös webalkalmazások fejlesztése mellett a mobil fejlesztésben is felhasználható.

 

Koa: Ezt a webes keretrendszert ugyanaz a csapat építi az Express mögött. Az Express sokéves tapasztalatára építve az egyszerűségre és a tömörségre összpontosítva fejlesztették ki. Ez a projekt megoldást jelentett arra a problémára, hogy az Express-ben olyan jelentős változtatásokat hajtsanak végre, amelyek összeegyeztethetetlenek más keretrendszer-mechanizmusokkal, amelyek széthasíthatják a közösséget.

 

Next.js: Ez a keretrendszer a React alkalmazások kiszolgálóoldali renderelésének megszervezésére szolgál.

 

Micro: Ez egy nagyon könnyű könyvtár aszinkron HTTP mikroszolgáltatások kiépítésére.

Socket.io. Ez egy könyvtár valós idejű hálózati alkalmazások fejlesztésére.

 

Valójában a Node.js ökoszisztémában szinte minden feladathoz találhat segítő könyvtárat. Ahogy el tudod képzelni, sok időbe telik egy ilyen ökoszisztéma felépítése. A Node.js platform 2009-ben jelent meg. Létezése során sok olyan dolog történt, amelyet tudnia kell egy programozónak, aki meg akarja tanulni ezt a platformot.

 

A Node.js rövid története

 

A Node.js idén 9 éves. Ez természetesen nem annyira, ha összehasonlítja ezt a kort a JavaScript korával, amely már 23 éves, vagy a web 25 éves korával, mint tudjuk, ha a Mozaik megjelenésétől számolunk böngésző.

 

9 év rövid idő a technológia számára, de most úgy tűnik, hogy a Node.js platform mindig is létezett.

 

A Node.js-sel a platform korai verzióiból, amikor még csak 2 éves volt. Akkor is, annak ellenére, hogy nem volt annyi információ a Node.js-ről, már érezhető volt, hogy a Node.js nagyon komoly.

 

Most beszéljünk a Node.js mögött álló technológiákról, és vessünk egy gyors pillantást aa platformhoz kapcsolódó főbb fejlemények.

 

Tehát a JavaScript egy olyan programozási nyelv, amelyet a Netscape programban szkriptnyelvként hoztak létre a weboldalak manipulálására a Netscape Navigator böngészőben.

A Netscape üzleti tevékenységének része a webszerverek értékesítése volt, amely magában foglalta a Netscape LiveWire nevű környezetet is. Ez lehetővé tette, hogy dinamikus weboldalakat hozzon létre szerveroldali JavaScript használatával.

 

a JS kiszolgálóoldali fejlesztésére való felhasználásának gondolata sokkal régebbi, mint a Node.js. Ez az ötlet majdnem olyan régi, mint maga a JavaScript, de a kérdéses időben a szerveroldali JS nem volt népszerű.

 

Az egyik kulcsfontosságú tényező, amely a Node.js platformot annyira elterjedté és népszerűvé tette, az az első megjelenés. Tehát néhány évvel korábban a JavaScriptet komoly nyelvnek kezdték tekinteni. Ez olyan Web 2.0 alkalmazásoknak köszönhető, mint a Google Maps vagy a Gmail, amelyek megmutatták a világnak a modern webes technológiák erejét.

 

A böngészők versenyháborújának köszönhetően, amely a mai napig tart, a JavaScript motorok teljesítménye jelentősen megnőtt. A nagy böngészők mögött álló fejlesztőcsapatok minden nap azon dolgoznak, hogy javítsák megoldásaik teljesítményét, ami általában jótékonyan hat a JavaScriptre.

 

Ilyen motor a már említett V8, amelyet a Chrome böngészőben használnak és a Node.js fájlban használnak. Ez a böngésző-fejlesztők egyik eredménye, amely nagy teljesítményű JavaScript-kódra törekszik.

 

Természetesen a Node.js népszerűsége nemcsak egy szerencsés véletlenen és azon alapul, hogy a platform megfelelő időben született. Bemutatta a világot a szerveroldali JavaScript fejlesztésének innovatív megközelítésébe. Nézzük meg a Node.js történelmének legfontosabb mérföldköveit.

 

2009


  • A Node.js megjelenése

  • Az első npm változat elkészítése.

 

2010

  • Az Express megjelenése.

  • A Socket.io megjelenése.

 

2011


  • Npm 1.0 kiadás.

  • Az olyan nagyvállalatok, mint a LinkedIn és az Uber, elkezdték használni a Node.js-t.

 

2012


  • A Node.js. népszerűségének gyors növekedése

 

2013


  • A Ghost megjelenése, az első nagyobb platform a Node.js-t használó publikációk számára.

  • Koa kiadás.

 

2014


  • Drámai események történtek ebben az évben. Megjelent az IO.js projekt, amely a Node.js elágazása, amelynek célja többek között az ES6 támogatás bevezetése és a platform fejlesztésének felgyorsítása volt.

 

2015


  • Megalakul a Node.js Alapítvány.

  • Az IO.js és a Node.js egyesítése

  • Npm-ben lehetővé válik a magánmodulokkal való munka.

  • Hozam Node.js 4 (meg kell jegyezni, hogy a platform 1., 2. és 3. verziója nem volt).

 

2016


  • Bal oldali csomag eseménye.

  • A fonal megjelenése.

  • Node.js 6 kiadás.

 

2017


  • Az Npm kezd nagyobb figyelmet fordítani a biztonságra.

  • Node.js 8 kiadás

  • A HTTP / 2 támogatásának megjelenése.

  • A V8 hivatalosan elismert JS motor, amelyet nemcsak a Chrome-hoz, hanem a Node-hoz is terveztek.

  • Hetente 3 milliárd npm letöltés történik.

 

2018


  • Node.js 10 kiadás.

  • ES modulok támogatása.

  • Kísérleti mjs támogatás.