A Node.js állandó alkalmazások beállítása az Ubuntu 16.04 rendszeren
A Node.js alkalmazások méretezhetőségük miatt népszerűek. Több egyidejű folyamat több kiszolgálón történő futtatása alacsonyabb késleltetést és hosszabb üzemidőt eredményez
A Node.js alkalmazások méretezhetőségük miatt népszerűek. Több egyidejű folyamat több kiszolgálón történő futtatása alacsonyabb késleltetést és hosszabb üzemidőt eredményez. Több kiszolgáló kezelésekor a legegyszerűbb, ha a Node.js alkalmazásokat összeomlás esetén automatikusan újraindul. Ez az oktatóanyag bemutatja, hogyan állíthatja be gyorsan az alkalmazás megmaradását egy üres Ubuntu 16.04 példányból.
sudo -s
és írja be jelszavát. Root hozzáférés szükséges az indítófájl módosításához, hogy a folyamatkezelő elinduljon rendszerindításkor.node -v
a telepített verzió ellenőrzésére. Ha a Node.js verziója nem a megfelelő, akkor a következő parancsok telepítik azt.Telepítse a Node.js-t.
$ sudo apt-get update
$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
$ sudo apt-get install -y nodejs
Ez a lépés nem kötelező, de ajánlott a telepítéshez. A cserepartíciók a merevlemez azon részei, amelyek célja a RAM kiegészítése. Kisebb Vultr-példányokon, például az 512 MB-os RAM-példányon, a swap partíció létrehozása előnyös lenne a teljesítmény szempontjából. A swap oktatóanyag automatizált verziójához használja az alábbi parancsokat.
$ git clone https://github.com/teamtofu/server-tools.git tools
$ bash ./tools/swap.sh
Általánosságban elmondható, hogy a swap használata nem szükséges 4 GB vagy annál nagyobb RAM-mal rendelkező példányok esetén, amikor állandó alkalmazásokat állít be, bár javíthatja az alkalmazások teljesítményét. A RAM jobban reagál, mint a swap, így a több RAM-mal rendelkező példányok általában jobb eredményeket hoznak, függetlenül a cserétől.
A Yarn egy könnyen használható csomagkezelő a Facebookról a Node.js csomagokhoz. Gyorsabb, mint az NPM, és determinisztikus is, ami különösen hasznos több kiszolgáló telepítésekor.
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
$ sudo apt-get update && sudo apt-get install yarn
Az NPM azonban használható a Yarn helyett, és az ebben az oktatóanyagban szereplő összes parancshoz hasonló parancsokat tartalmaz.
Ha az alkalmazás egy git tárolóban van tárolva, klónozza azt, és használja a yarn install
. Az alkalmazásnak rendelkeznie kell egy szerverbeviteli fájllal, általában server.js
vagy index.js
, amelyet a következő lépésekben használunk.
A Process Manager 2 az a csomag, amely automatikusan újraindítja az alkalmazást. A Process Manager 2 nagyon népszerű, és a Microsoft, a PayPal és az Intuit használja, így biztonságos és megbízható.
$ yarn global add pm2
Az alkalmazás démonizálódik (a háttérben fut), és automatikusan újraindul a start paranccsal.
$ pm2 start [path to your entry.js] -i max
Ha a maximális számú folyamatot szeretné automatikusan elindítani, adja át az -i max
argumentumot. Ha ezt a Vultr-példányt kizárólag az alkalmazás kiszolgálására használják, akkor ez ajánlott. Az egynél több CPU-val rendelkező Vultr-példányok esetén több folyamat indul el, és a Process Manager 2 terheléselosztóként működik ezen egyedi folyamatok mindegyikénél.
Az alkalmazás elindítása után mentse el az alkalmazás konfigurációját. Ezután futtassa az indítási parancsot, hogy a Process Manager 2 automatikusan futtassa a háttérben, amikor az Ubuntu elindul. Ubuntu 16.04 esetén a Process Manager 2 a következőhöz kötődik systemd
.
$ pm2 save
$ pm2 startup
Most, ha a Node.js alkalmazás összeomlik egy hiba miatt, újraindul, és ha az Ubuntu bármilyen okból összeomlik, a folyamat automatikusan újraindul az Ubuntuval. A folyamatok újraindíthatók a -val pm2 gracefulReload all
, a Process Manager 2 pedig a -val pm2 update
. Ha meg szeretné akadályozni, hogy a Process Manager 2 elinduljon rendszerindításkor, futtassa a parancsot pm2 unstartup
.
Próbálja meg beírni, reboot
és ellenőrizze, hogy az alkalmazás kiszolgálásra kerül-e az Ubuntu elindulása után. Ha az alkalmazás az internetre készült, és a porton keresztül szolgál ki 80
, akkor curl http://localhost/
a kezdőoldal HTML-kódja jelenik meg. Abban az esetben, ha nem működik, a parancs pm2 status
megjeleníti a futó folyamatokat, és a start parancs újra kiadható.
Ha az alkalmazást frissítik, például egy git-tárház lehívásával, akkor parancsot kell kiadni a futó alkalmazásfolyamatok frissítéséhez.
$ pm2 update
A Parse Server , egy népszerű nyílt forráskódú platform szolgáltatásként, egy alkalmazás háttérprogramjaként szolgál. A háttérrendszer összeomolhat a kódban vagy a kérelmek mennyiségében előforduló hibák miatt, de az alkalmazás nem fog leállást tapasztalni, mert a többi kiszolgáló (és/vagy folyamatok) továbbra is fut, és az elemzési kiszolgáló folyamata gyorsan újraindul.
A Node.js alkalmazások méretezhetőségük miatt népszerűek. Több egyidejű folyamat több kiszolgálón történő futtatása alacsonyabb késleltetést és hosszabb üzemidőt eredményez
Építőeszközök telepítése Számos eszközre lesz szükség. Futtassa a következő parancsot: apt-get install make g++ libssl-dev git Node.js forrás letöltése It i
Más rendszert használ? Az osTicket egy nyílt forráskódú ügyfélszolgálati jegyértékesítő rendszer. Az osTicket forráskódja nyilvánosan a Githubon található. Ebben az oktatóanyagban
Más rendszert használ? Bevezetés A Bro egy hatékony nyílt forráskódú hálózatelemző keretrendszer. A Bros elsődleges célja a hálózati biztonság figyelése. Br
This article will teach you how to setup a Minecraft Pocket Edition server on CentOS 6. Setting up a Minecraft PE server is quite simple. First, install th
A GruntJS egy JavaScript-feladat futtató, amely a NodeJS tetejére íródott. Használható az alkalmazás ismétlődő feladatainak automatizálására, mint például a kicsinyítés, a fordítás
A ZNC egy ingyenes és nyílt forráskódú IRC kidobó, amely állandóan csatlakozik a hálózathoz, így az ügyfelek offline állapotban is fogadhatják az elküldött üzeneteket. Thi
A PM2 egy nagyon népszerű Node folyamatkezelő, amely megkönnyíti a NodeJS alkalmazások futtatását. A PM2 megkönnyíti az alkalmazások újraindítását, az összeomlás automatikus újraindítását
Using a Different System? HAProxy is a network software application that offers high availability, load balancing, and proxying for TCP and HTTP networ
Bevezetés A Strapi egy nyílt forráskódú NodeJS Content Management Framework, amely biztonságos és méretezhető, gyártásra kész API-alkalmazások létrehozására szolgál.
Using a Different System? Introduction In this guide, you will learn how to set up an Unturned 2.2.5 server on a Vultr VPS running Ubuntu 16.04. Note: Thi
A Ruby on Rails (RoR) egy Ruby programozási nyelven írt keretrendszer, amely lehetővé teszi a Ruby használatát HTML, CSS és hasonló programokkal kombinálva.
A Chrome V8 Engine által hajtott Node.js egy népszerű nyelv, amelyet gyorsan méretezhető alkalmazások készítésére használnak. Számos projektet támogatott már, többek között
This tutorial explains how to setup a Mumble server (Murmur) on Arch Linux. Everything done in this tutorial is done as the root user. Installation an
This tutorial explains how to setup a Counter-Strike: Global Offensive server on Arch Linux. This tutorial assumes that you logged in with a standard use
Más rendszert használ? Az osTicket egy nyílt forráskódú ügyfélszolgálati jegyértékesítő rendszer. Az osTicket forráskódja nyilvánosan a Githubon található. Ebben az oktatóanyagban
Bevezetés Az iptables egy hatékony eszköz a Linux kernelek integrált tűzfalának konfigurálására. A legtöbb Ubuntu disztribúcióra azonban előre telepítve van
LXC containers (Linux containers) are an operating system feature in Linux that can be used to run multiple isolated Linux systems on a single host. Thes
Más rendszert használ? Az osTicket egy nyílt forráskódú ügyfélszolgálati jegyértékesítő rendszer. Az osTicket forráskódja nyilvánosan a Githubon található. Ebben az oktatóanyagban
Más rendszert használ? Az osTicket egy nyílt forráskódú ügyfélszolgálati jegyértékesítő rendszer. Az osTicket forráskódja nyilvánosan a Githubon található. Ebben az oktatóanyagban
A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.
Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.
Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.
Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.
Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…
Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.
Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.
Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.
Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.
Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket