Hvernig á að setja upp Node.js viðvarandi forrit á Ubuntu 16.04

Node.js forrit eru vinsæl fyrir getu sína til að skala. Að keyra mörg samhliða ferli á mörgum netþjónum gefur minni leynd og meiri spennutíma. Þegar stjórnað er mörgum netþjónum er auðveldast að láta Node.js forritin endurræsa sjálfkrafa ef þau hrynja. Þessi kennsla mun sýna þér hvernig þú getur fljótt sett upp þrautseigju forrita frá auðu Ubuntu 16.04 tilviki.

Forkröfur

  • Búðu til Vultr dæmi af hvaða stærð sem er með Ubuntu 16.04 LTS x64.
  • Ef þú ert ekki rót notandinn skaltu keyra sudo -sog slá inn lykilorðið þitt. Rótaraðgangur er nauðsynlegur til að breyta ræsiskránni þannig að vinnslustjórinn byrji við ræsingu.
  • Gakktu úr skugga um að Node.js sé uppsett á tilvikinu og að útgáfan af Node.js sé 8.9.3 LTS eða nýrri, sem er nauðsynlegt til að þrautseigjustjórinn gangi vel. Notaðu node -vtil að athuga útgáfuna sem er uppsett. Ef Node.js er ekki á réttri útgáfu munu eftirfarandi skipanir setja það upp.

Settu upp Node.js.

$ sudo apt-get update
$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
$ sudo apt-get install -y nodejs

Búðu til skiptisneiðing

Þetta skref er valfrjálst, en mælt með því fyrir uppsetninguna. Swap skipting eru hluti af harða disknum sem eru tileinkaðir til að hjálpa til við að bæta við vinnsluminni. Á minni Vultr tilvikum, svo sem 512MB RAM dæmis að búa til diskminnissneið væri gagnlegt að árangri. Fyrir sjálfvirka útgáfu af skiptikennslunni, notaðu skipanirnar hér að neðan.

$ git clone https://github.com/teamtofu/server-tools.git tools
$ bash ./tools/swap.sh

Almennt séð, að nota skipti væri ekki nauðsynlegt fyrir tilvik með 4 GB af vinnsluminni eða meira þegar þú setur upp viðvarandi forrit, þó það gæti bætt afköst forritanna. Vinnsluminni er móttækilegra en skipti, þannig að tilvik með meira vinnsluminni munu hafa tilhneigingu til að skila betri árangri óháð skipti.

Settu upp garn

Yarn er auðveldur pakkastjóri frá Facebook fyrir Node.js pakka. Það er hraðvirkara en NPM og einnig deterministic, sem er sérstaklega gagnlegt þegar þú setur upp marga netþjóna.

$ 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

Hins vegar er hægt að nota NPM í staðinn fyrir Yarn og það hefur sambærilegar skipanir og allar þær í þessari kennslu.

Settu upp Node.js forritið þitt

Ef forritið þitt er hýst í git geymslu, klónaðu það og notaðu yarn install. Forritið þitt ætti að vera með færsluskrá fyrir netþjón, venjulega server.jseða index.js, sem verður notuð í næstu skrefum.

Settu upp Process Manager 2

Process Manager 2 er pakkinn sem mun endurræsa forritið sjálfkrafa. Process Manager 2 er mjög vinsæll og hann er notaður af Microsoft, PayPal og Intuit, svo hann er öruggur og áreiðanlegur.

$ yarn global add pm2

Bættu umsókn þinni við sem ferli

Forritið verður endurræst (keyrt í bakgrunni) og sjálfvirkt endurræst með start skipuninni.

$ pm2 start [path to your entry.js] -i max

Ef þú vilt ræsa hámarksfjölda ferla sjálfkrafa skaltu senda -i maxrökin. Ef eina notkun þessa Vultr tilviks er að þjóna forritinu, þá er mælt með því. Fyrir Vultr tilvik með fleiri en einn örgjörva verða mörg ferli ræst og Process Manager 2 mun starfa sem álagsjafnari fyrir öll þessi einstöku ferli.

Ræstu forritið þitt sjálfkrafa við ræsingu

Eftir að forritið hefur verið ræst skaltu vista stillingar forritsins. Keyrðu síðan ræsingarskipunina til að keyra Process Manager 2 sjálfkrafa í bakgrunni þegar Ubuntu ræsist. Fyrir Ubuntu 16.04 mun Process Manager 2 bindast við systemd.

$ pm2 save
$ pm2 startup

Nú ef Node.js forritið þitt hrynur vegna villu mun það endurræsa sig og ef Ubuntu hrynur af einhverjum ástæðum mun ferlið sjálfkrafa endurræsa með Ubuntu. Hægt er að endurræsa ferlin með pm2 gracefulReload allog endurræsa Process Manager 2 með pm2 update. Til að koma í veg fyrir að Process Manager 2 byrji við ræsingu skaltu keyra pm2 unstartup.

Prófanir

Prófaðu að slá inn rebootog athuga hvort forritið þitt sé birt eftir að Ubuntu er ræst upp. Ef sótt er um vefinn og borið fram yfir höfn 80, þá curl http://localhost/munu sýna HTML fyrir byrjun síðunni. Ef það virkar ekki pm2 statusmun skipunin sýna hlaupandi ferla og hægt er að gefa út byrjunarskipunina aftur.

Dreifa nýjum útgáfum af forritinu

Ef forritið er uppfært, svo sem með því að toga í git geymslu, þá verður að gefa út skipun til að uppfæra hlaupandi umsóknarferli.

$ pm2 update

Dæmi um notkun

Parse Server , vinsæll opinn vettvangur sem þjónusta, þjónar sem stuðningur fyrir forrit. Bakendinn gæti hrunið vegna villna í kóða eða magn beiðna, en forritið mun ekki upplifa niðurtíma vegna þess að aðrir netþjónar (og/eða ferlar) halda áfram að keyra og Parse Server ferlið er fljótt endurræst.


Settu upp Cacti á Debian Jessie

Settu upp Cacti á Debian Jessie

Inngangur Cacti er opinn vöktunar- og grafatól sem byggir að fullu á RRD gögnum. Í gegnum Cacti geturðu fylgst með næstum hvers kyns tækjum

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Inngangur Lets Encrypt er vottunaryfirvaldsþjónusta sem býður upp á ókeypis TLS/SSL vottorð. Uppsetningarferlið er einfaldað af Certbot,

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Að nota annað kerfi? Hvað er Tekkit Classic? Tekkit Classic er modpack fyrir leikinn sem allir þekkja og elska; Minecraft. Það inniheldur eitthvað af ver

Settu upp iRedMail á Debian Wheezy

Settu upp iRedMail á Debian Wheezy

Að nota annað kerfi? Þessi kennsla mun sýna þér hvernig á að setja upp hópbúnaðinn iRedMail á nýrri uppsetningu á Debian Wheezy. Þú ættir að nota þjóna

Að búa til Jekyll blogg á Ubuntu 16.04

Að búa til Jekyll blogg á Ubuntu 16.04

Að nota annað kerfi? Jekyll er frábær valkostur við WordPress til að blogga eða deila efni. Það krefst enga gagnagrunna og það er mjög auðvelt i

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

PHP og tengdir pakkar eru algengustu íhlutirnir þegar vefþjónn er notaður. Í þessari grein munum við læra hvernig á að setja upp PHP 7.0 eða PHP 7.1 o

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

1. Virtualmin/Webmin Virtualmin er öflugt og sveigjanlegt stjórnborð fyrir vefhýsingu fyrir Linux og UNIX kerfi byggt á hinum vel þekkta Open Source vefgrunni

Setja upp Yii forrit á Ubuntu 14.04

Setja upp Yii forrit á Ubuntu 14.04

Yii er PHP ramma sem gerir þér kleift að þróa forrit hraðar og auðveldlega. Uppsetning Yii á Ubuntu er einföld, þar sem þú munt læra nákvæmlega

Notkun Skjár á Ubuntu 14.04

Notkun Skjár á Ubuntu 14.04

Skjár er forrit sem leyfir margs konar notkun flugstöðvarlota innan eins glugga. Þetta gerir þér kleift að líkja eftir mörgum flugstöðvum gluggum þar sem það ma

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Þessi kennsla útskýrir hvernig á að setja upp DNS netþjón með Bind9 á Debian eða Ubuntu. Í gegnum greinina skaltu skipta út-léninu þínu.com í samræmi við það. Á þ

Notkun Logrotate til að stjórna annálaskrám

Notkun Logrotate til að stjórna annálaskrám

Inngangur Logrotate er Linux tól sem einfaldar stjórnun annálaskráa. Það keyrir venjulega einu sinni á dag í gegnum cron-vinnu og stjórnar annálagrunni

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Settu upp Red5 Media Server á Ubuntu 16.04

Settu upp Red5 Media Server á Ubuntu 16.04

Að nota annað kerfi? Red5 er opinn uppspretta miðlara útfærður í Java sem gerir þér kleift að keyra Flash fjölnotendaforrit eins og straumspilun í beinni

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Í þessari grein munum við sjá hvernig á að setja saman og setja upp Nginx mainline frá opinberum heimildum Nginx með PageSpeed ​​einingunni, sem gerir þér kleift að

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Að nota annað kerfi? Vanilla forum er opinn uppspretta spjallforrit skrifað í PHP. Það er fullkomlega sérhannaðar, auðvelt í notkun og styður utanaðkomandi

Hvernig á að setja upp Gitea á Debian 9

Hvernig á að setja upp Gitea á Debian 9

Að nota annað kerfi? Gitea er annað opinn uppspretta, sjálfhýst útgáfustýringarkerfi knúið af Git. Gitea er skrifað á Golang og er

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira