4 Wasimamizi wa Mchakato wa Programu za Node.js katika Linux


Kidhibiti cha mchakato wa Node.js ni zana muhimu ya kuhakikisha kuwa mchakato wa Node.js au hati inaendeshwa mfululizo (milele) na inaweza kuiwezesha kuanza kiotomatiki kwenye kuwasha mfumo.

Inakuruhusu kufuatilia huduma zinazoendeshwa na kuwezesha kazi za kawaida za usimamizi wa mfumo (kama vile kuanzisha upya kwa kutofaulu, kusimamisha, kupakia upya usanidi bila muda wa chini, kurekebisha vigezo/mipangilio ya mazingira, kuonyesha vipimo vya utendakazi na mengine mengi). Pia inasaidia uwekaji kumbukumbu wa programu, kuunganisha, na kusawazisha mizigo, na vipengele vingine vingi muhimu vya usimamizi wa mchakato.

Kidhibiti kifurushi ni muhimu haswa kwa utumaji wa programu za Node.js katika mazingira ya uzalishaji. Katika makala haya, tutapitia wasimamizi wanne wa mchakato wa usimamizi wa programu ya Node.js katika mfumo wa Linux.

1. PM2

PM2 ni chanzo huria, cha hali ya juu, chenye vipengele vingi, jukwaa mtambuka na meneja maarufu zaidi wa mchakato wa kiwango cha uzalishaji wa Node.js na kikisawazisha kilichojumuishwa ndani. Inakuruhusu kuorodhesha, kufuatilia na kuchukua hatua kwa michakato yote ya Nodejs iliyozinduliwa, na inasaidia hali ya nguzo.

Inaauni ufuatiliaji wa programu: inatoa njia rahisi ya kufuatilia matumizi ya rasilimali (kumbukumbu na CPU) ya programu yako. Inaauni utendakazi wa usimamizi wa mchakato wako kwa kukuruhusu kusanidi na kurekebisha tabia ya kila programu kupitia faili ya mchakato (miundo inayotumika ni pamoja na Javascript, JSON, na YAML).

Kumbukumbu za programu ni muhimu kila wakati katika mazingira ya utayarishaji, katika suala hili PM2 hukuruhusu kudhibiti kumbukumbu za programu yako kwa urahisi. Inatoa njia na umbizo tofauti za kushughulikia na kuonyesha kumbukumbu mtawalia. Unaweza kuonyesha kumbukumbu katika muda halisi, kuzifuta, na kuzipakia upya inapohitajika.

Muhimu zaidi, PM2 inaauni hati za uanzishaji ambazo unaweza kusanidi ili kuanzisha kiotomatiki michakato yako kwenye uanzishaji upya wa mashine unaotarajiwa au usiotarajiwa. Pia inaauni uanzishaji upya otomatiki wa programu faili inapobadilishwa katika saraka ya sasa au saraka zake ndogo.

Kwa kuongezea, PM2 inakuja na mfumo wa moduli ambayo inaruhusu watumiaji kuunda moduli maalum za usimamizi wa mchakato wa Nodejs. Kwa mfano, unaweza kuunda moduli ya moduli ya mzunguko wa logi au kusawazisha mzigo, na mengi zaidi.

Mwisho kabisa, ikiwa unatumia vyombo vya Docker, PM2 inaruhusu ujumuishaji wa kontena, na inatoa mfumo wa API unaokuruhusu kuutumia kwa utaratibu.

StrongLoop PM pia ni chanzo huria, meneja wa mchakato wa uzalishaji wa hali ya juu wa programu za Node.js iliyo na kusawazisha upakiaji uliojengewa ndani kama PM2 na inaweza kutumika kupitia safu ya amri au kiolesura cha picha.

Inaauni ufuatiliaji wa programu (angalia vipimo vya utendakazi kama vile muda wa matukio, CPU na utumiaji wa kumbukumbu), utumaji wa seva pangishi nyingi, modi ya nguzo, uanzishaji na uboreshaji wa programu ya muda usiopungua sifuri, kuwashwa upya kiotomatiki unaposhindwa, na ujumlishaji wa kumbukumbu na usimamizi.

Zaidi ya hayo, husafirishwa kwa usaidizi wa Docker, hukuruhusu kusafirisha vipimo vya utendakazi kwa seva zinazolingana na StatsD, na kutazama katika vidhibiti vya watu wengine kama vile DataDog, Graphite, Syslog na faili za kumbukumbu ghafi.

3. Milele

Milele ni zana huria, rahisi na inayoweza kusanidiwa ya kiolesura cha mstari wa amri ili kuendesha hati fulani mfululizo (milele). Inafaa kwa matumizi madogo ya programu na hati za Node.js. Unaweza kutumia milele kwa njia mbili: kupitia safu ya amri au kwa kuipachika kwenye nambari yako.

Inakuruhusu kudhibiti (kuanza, kuorodhesha, kuacha, kusimamisha yote, kuanzisha upya, kuanzisha upya yote, nk.) Michakato ya Node.js na inasaidia kuua mchakato na kuondoka kwa ubinafsishaji wa ishara, na mengi zaidi. Kwa kuongeza, inasaidia chaguo kadhaa za matumizi ambazo unaweza kupita moja kwa moja kutoka kwa mstari wa amri au kuzipitisha kwenye faili ya JSON.

4. SystemD - Huduma na Meneja wa Mfumo

Katika Linux, Systemd ni daemoni inayodhibiti rasilimali za mfumo kama vile michakato na vipengee vingine vya mfumo wa faili. Rasilimali yoyote inayodhibitiwa na systemd inajulikana kama kitengo. Kuna aina tofauti za vitengo ikiwa ni pamoja na huduma, kifaa, soketi, mlima, shabaha na vitengo vingine vingi.

Systemd inadhibiti vitengo kupitia faili ya usanidi inayojulikana kama faili ya kitengo. Kwa hivyo, ili kudhibiti seva yako ya Node.js kama huduma zingine za mfumo, unahitaji kuunda faili ya kitengo, ambayo katika kesi hii itakuwa faili ya huduma.

Mara tu unapounda faili ya huduma kwa seva yako ya Node.js, unaweza kuianzisha, kuiwezesha kuanza kiotomatiki wakati wa kuwasha mfumo, angalia hali yake, anzisha tena (ikomesha na uanze tena) au upakie upya usanidi wake, na hata. acha kama huduma zingine zozote za mfumo.

Kwa habari zaidi, angalia: Jinsi ya Kuunda na Kuendesha Vitengo Vipya vya Huduma katika Mfumo kwa Kutumia Hati ya Shell

Kidhibiti kifurushi cha Node.js ni zana muhimu ya kupeleka mradi wako katika mazingira ya uzalishaji. Huweka programu hai milele na hurahisisha jinsi unavyoweza kuidhibiti. Katika nakala hii, tulipitia wasimamizi wanne wa vifurushi vya Node.js. Ikiwa una nyongeza au maswali ya kuuliza, tumia fomu ya maoni iliyo hapa chini ili kuwasiliana nasi.