4 protsessorihaldurit Node.js-i rakendustele Linuxis


Node.js-i protsessihaldur on kasulik tööriist tagamaks, et Node.js-protsess või skript töötaks pidevalt (igavesti) ja võimaldaks tal süsteemi käivitamisel automaatselt käivitada.

See võimaldab teil jälgida jooksvaid teenuseid ja hõlbustab tavalisi süsteemihalduse ülesandeid (näiteks rikke taaskäivitamine, seiskamine, konfiguratsioonide uuesti laadimine ilma seiskamiseta, keskkonnamuutujate/sätete muutmine, jõudlusmõõdikute kuvamine ja palju muud). Samuti toetab see rakenduste logimist, klastreid ja koormuse tasakaalustamist ning nii palju muid kasulikke protsesside haldamise funktsioone.

Paketihaldur on kasulik eelkõige Node.js-rakenduste juurutamiseks tootmiskeskkonnas. Selles artiklis vaatame üle neli Node.js-i rakenduse haldamise protsessihaldurit Linuxi süsteemis.

1. PM2

PM2 on avatud lähtekoodiga, arenenud, funktsiooniderikas platvormidevaheline ja sisseehitatud koormuse tasakaalustajaga Node.js kõige populaarsem tootmistasandi protsessihaldur. See võimaldab teil kõiki käivitatud Nodejs-protsesse loetleda, jälgida ja tegutseda ning see toetab klastrirežiimi.

See toetab rakenduste jälgimist: pakub lihtsat viisi oma rakenduse ressursside (mälu ja protsessori) kasutamise jälgimiseks. See toetab teie protsesside haldamise töövoogu, võimaldades teil iga faili käitumist protsessifaili kaudu konfigureerida ja häälestada (toetatud vormingud hõlmavad Javascripti, JSON-i ja YAML-i).

Rakenduste logid on tootmiskeskkonnas alati võtmetähtsusega. Selles osas võimaldab PM2 hõlpsasti oma rakenduse logisid hallata. See pakub erinevaid viise ja formaate vastavalt logide töötlemiseks ja kuvamiseks. Võite logisid reaalajas kuvada, neid loputada ja vajadusel uuesti laadida.

Oluline on see, et PM2 toetab käivitamisskripte, mille saate konfigureerida oma protsesside automaatseks käivitamiseks eeldatava või ootamatu masina taaskäivitamise ajal. Samuti toetab see rakenduse automaatset taaskäivitamist, kui faili muudetakse praeguses kataloogis või selle alamkataloogides.

Lisaks on PM2-l kaasas moodulite süsteem, mis võimaldab kasutajatel luua kohandatud mooduleid Nodejs-protsesside haldamiseks. Näiteks saate luua mooduli palgi pöörlemismooduli või koormuse tasakaalustamiseks ja palju muud.

Ja lõpuks, kui kasutate Dockeri konteinereid, võimaldab PM2 konteinerite integreerimist ja pakub API-süsteemi, mis võimaldab teil seda programmiliselt kasutada.

StrongLoop PM on ka avatud lähtekoodiga täiustatud tootmisprotsesside haldur Node.js rakenduste jaoks, millel on sisseehitatud koormuse tasakaalustamine nagu PM2 ja seda saab kasutada käsurea või graafilise liidese kaudu.

See toetab rakenduste jälgimist (vaadake jõudlusmõõdikuid, näiteks sündmuse tsükli aegu, protsessori ja mälu tarbimist), mitme hosti juurutamist, klastrirežiimi, rakenduste taaskäivitamist ja täiendamist nullseisukohaga, automaatse taaskäivitamise korral tõrke korral ning logide liitmist ja haldamist.

Lisaks tarnitakse see Dockeri toega, võimaldab teil eksportida toimivusmõõdikuid StatsD-ga ühilduvatesse serveritesse ja vaadata kolmanda osapoole konsoolides, nagu DataDog, Graphite, Syslog ja toored logifailid.

3. Igavesti

Forever on avatud lähtekoodiga, lihtne ja konfigureeritav käsurea liidese tööriist antud skripti pidevaks (igaveseks) käitamiseks. See sobib väiksemate Node.js-rakenduste ja skriptide juurutamiseks. Igavesti saate kasutada kahel viisil: käsurea kaudu või selle oma koodi sisestamisega.

See võimaldab teil hallata (käivitada, loetleda, peatada, peatada kõik, taaskäivitada, taaskäivitada kõik jne). Node.js protsessid ja see toetab protsessi tapmist ja väljundsignaali kohandamist ja palju muud. Lisaks toetab see mitmeid kasutusvalikuid, mille saate edastada otse käsurealt või passeerida need JSON-failis.

4. SystemD - teenus ja süsteemihaldur

Linuxis on Systemd deemon, mis haldab süsteemiressursse, näiteks protsesse ja failisüsteemi muid komponente. Kõiki ressursse, mida systemd haldab, nimetatakse ühikuks. Seadmeid on erinevat tüüpi, sealhulgas teenus, seade, pistikupesa, kinnitus, sihtmärk ja paljud muud üksused.

Systemd haldab üksusi konfiguratsioonifaili kaudu, mida tuntakse ühikfailina. Seetõttu peate oma Node.js-serveri nagu kõigi muude süsteemiteenuste haldamiseks looma selle jaoks üksusfaili, mis antud juhul on teenusefail.

Kui olete oma Node.js serveri jaoks loonud teenusefaili, saate seda käivitada, lubada sellel süsteemi käivitamisel automaatselt käivitada, kontrollida selle olekut, taaskäivitada (peatada ja uuesti käivitada) või uuesti laadida oma konfiguratsiooni ja isegi peatage see nagu kõik muud süsteemiteenused.

Lisateavet leiate teemast: Kuidas luua ja käivitada süsteemis Systemd uusi teenuseüksusi Shelli skripti abil

Node.js paketihaldur on kasulik tööriist projekti juurutamiseks tootmiskeskkonnas. See hoiab rakendust igavesti elus ja lihtsustab selle juhtimist. Selles artiklis vaatasime üle neli Node.js paketihaldurit. Kui teil on täiendusi või küsimusi, kasutage meiega ühendust saamiseks allolevat tagasisidevormi.