4 Maniġers tal-Proċess għal Applikazzjonijiet Node.js fil-Linux


Maniġer tal-proċess Node.js huwa għodda utli biex jiġi żgurat li proċess jew skript Node.js jimxi kontinwament (għal dejjem) u jista 'jippermetti li jibda awtomatikament mal-boot tas-sistema.

Jippermettilek tissorvelja s-servizzi li qed jaħdmu u tiffaċilita l-kompiti komuni ta 'amministrazzjoni tas-sistema (bħal bidu mill-ġdid fuq falliment, waqfien, tagħbija mill-ġdid tal-konfigurazzjonijiet mingħajr ħin ta' waqfien, timmodifika varjabbli/settings tal-ambjent, turi metriċi tal-prestazzjoni u ħafna aktar). Jappoġġa wkoll l-illoggjar tal-applikazzjonijiet, il-clustering, u l-ibbilanċjar tat-tagħbija, u tant karatteristiċi utli oħra tal-ġestjoni tal-proċess.

Maniġer tal-pakkett huwa utli speċjalment għall-iskjerament ta 'applikazzjonijiet Node.js f'ambjent ta' produzzjoni. F'dan l-artikolu, se nirrevedu erba 'maniġers tal-proċess għall-ġestjoni tal-applikazzjoni Node.js f'sistema Linux.

1. PM2

PM2 huwa sors miftuħ, avvanzat, b'ħafna karatteristiċi, cross-platform u l-aktar maniġer tal-proċess fil-livell tal-produzzjoni popolari għal Node.js b'bilanċjar tat-tagħbija integrat. Jippermettilek telenka, timmonitorja u taġixxi fuq il-proċessi kollha ta' Nodejs imnedija, u tappoġġja l-modalità cluster.

Jappoġġja l-monitoraġġ tal-applikazzjoni: joffri mod sempliċi biex jimmonitorja l-użu tar-riżorsi (memorja u CPU) tal-applikazzjoni tiegħek. Jappoġġja l-fluss tax-xogħol tal-ġestjoni tal-proċess tiegħek billi jippermettilek tikkonfigura u tirranġa l-imġieba ta 'kull applikazzjoni permezz ta' fajl tal-proċess (formati appoġġjati jinkludu Javascript, JSON, u YAML).

Ir-zkuk tal-applikazzjoni huma dejjem importanti f'ambjent ta 'produzzjoni, f'dan ir-rigward PM2 jippermettilek timmaniġġja faċilment ir-zkuk tal-applikazzjoni tiegħek. Jipprovdi modi u formati differenti għall-immaniġġjar u l-wiri taz-zkuk rispettivament. Tista' turi zkuk f'ħin reali, tlaħlaħhom, u terġa' tgħabbihom meta jkun meħtieġ.

Importanti, PM2 jappoġġja skripts tal-istartjar li tista 'tikkonfigura biex tibda awtomatikament il-proċessi tiegħek matul bidu mill-ġdid tal-magni mistenni jew mhux mistenni. Jappoġġa wkoll l-awto-ristartjar ta' applikazzjoni meta fajl jiġi modifikat fid-direttorju attwali jew is-sottodirettorji tiegħu.

Barra minn hekk, PM2 jiġi b'sistema ta 'moduli li tippermetti lill-utenti joħolqu moduli tad-dwana għall-ġestjoni tal-proċess Nodejs. Pereżempju, tista 'toħloq modulu għal modulu ta' rotazzjoni taz-zkuk jew ibbilanċjar tat-tagħbija, u ħafna aktar.

Fl-aħħar iżda mhux l-inqas, jekk qed tuża kontenituri Docker, PM2 jippermetti l-integrazzjoni tal-kontejners, u joffri sistema API li tippermettilek tużaha b'mod programmatiku.

StrongLoop PM huwa wkoll maniġer tal-proċess ta 'produzzjoni avvanzat ta' sors miftuħ għall-applikazzjonijiet Node.js b'ibbilanċjar tat-tagħbija integrat bħal PM2 u jista 'jintuża permezz ta' linja ta 'kmand jew interface grafika.

Jappoġġja l-monitoraġġ tal-applikazzjoni (ara l-metriċi tal-prestazzjoni bħall-ħinijiet tal-loop tal-avvenimenti, il-konsum tas-CPU u tal-memorja), l-iskjerament multi-host, il-mod tal-cluster, il-bidu mill-ġdid u l-aġġornamenti tal-applikazzjoni mingħajr waqfien, il-bidu mill-ġdid tal-proċess awtomatiku mal-falliment, u l-aggregazzjoni u l-ġestjoni tal-log.

Barra minn hekk, tintbagħat b'appoġġ Docker, tippermettilek tesporta metriċi tal-prestazzjoni għal servers kompatibbli ma 'StatsD, u tara f'konsols ta' partijiet terzi bħal DataDog, Graphite, Syslog u fajls ta 'log mhux ipproċessati.

3. Għal dejjem

Forever hija għodda ta' interface tal-linja tal-kmand b'sors miftuħ, sempliċi u konfigurabbli biex tmexxi skript partikolari kontinwament (għal dejjem). Huwa adattat għat-tmexxija ta' skjeramenti iżgħar ta' apps u skripts Node.js. Tista 'tuża għal dejjem f'żewġ modi: permezz tal-linja tal-kmand jew billi tintegraha fil-kodiċi tiegħek.

Jippermettilek timmaniġġja (tibda, lista, twaqqaf, twaqqaf kollox, terġa 'tibda, terġa' tibda, eċċ.) proċessi Node.js u jappoġġja l-qtil ta 'proċess u l-personalizzazzjoni tas-sinjal tal-ħruġ, u ħafna aktar. Barra minn hekk, jappoġġja diversi għażliet ta 'użu li tista' tgħaddi direttament mil-linja tal-kmand jew tgħaddihom f'fajl JSON.

4. SystemD – Maniġer tas-Servizz u tas-Sistema

Fil-Linux, Systemd huwa daemon li jimmaniġġja r-riżorsi tas-sistema bħal proċessi u komponenti oħra tas-sistema tal-fajls. Kwalunkwe riżorsa ġestita minn systemd hija magħrufa bħala unità. Hemm tipi differenti ta 'unitajiet inklużi servizz, apparat, sokit, muntatura, mira u ħafna unitajiet oħra.

Systemd jimmaniġġja l-unitajiet permezz ta 'fajl ta' konfigurazzjoni magħruf bħala fajl tal-unità. Għalhekk, sabiex timmaniġġja s-server Node.js tiegħek bħal kull servizz ieħor tas-sistema, trid toħloq għalih fajl unitarju, li f'dan il-każ ikun fajl tas-servizz.

Ladarba tkun ħoloq fajl ta' servizz għas-server Node.js tiegħek, tista' tibdah, tippermettilu li jibda awtomatikament fil-ħin tal-boot tas-sistema, iċċekkja l-istatus tiegħu, jerġa' jibda (waqqaf u jerġa' ibda) jew jerġa' jtella' l-konfigurazzjoni tiegħu, u anke waqqafha bħal kull servizz systemd ieħor.

Għal aktar informazzjoni, ara: Kif Oħloq u Tmexxi Unitajiet ta' Servizz Ġodda f'Systemd billi tuża Shell Script

Maniġer tal-pakkett Node.js huwa għodda utli għall-iskjerament tal-proġett tiegħek f'ambjent ta 'produzzjoni. Hija żżomm applikazzjoni ħajja għal dejjem u tissimplifika kif tista 'tikkontrollaha. F'dan l-artikolu, irrevejna erba' maniġers tal-pakketti għal Node.js. Jekk għandek xi żidiet jew mistoqsijiet x'tistaqsi, uża l-formola ta' feedback hawn taħt biex tilħaqna.