Vyhledávání na webu

4 Správci procesů pro aplikace Node.js v Linuxu


Správce procesů Node.js je užitečný nástroj, který zajišťuje, že proces nebo skript Node.js běží nepřetržitě (navždy) a umožňuje jeho automatické spouštění při spouštění systému. .

Umožňuje vám sledovat běžící služby a usnadňuje běžné úlohy správy systému (jako je restartování při selhání, zastavení, opětovné načtení konfigurací bez prostojů, úprava proměnných/nastavení prostředí, zobrazení metrik výkonu a mnoho dalšího). Podporuje také protokolování aplikací, shlukování a vyvažování zátěže a mnoho dalších užitečných funkcí správy procesů.

Přečtěte si také: 14 nejlepších rámců NodeJS pro vývojáře v roce 2019

Správce balíčků je užitečný zejména pro nasazení aplikací Node.js v produkčním prostředí. V tomto článku se podíváme na čtyři správce procesů pro správu aplikací Node.js v systému Linux.

1. PM2

PM2 je open source, pokročilý, na funkce bohatý, multiplatformní a nejoblíbenější správce procesů na produkční úrovni pro Node.js s vestavěným nástrojem pro vyrovnávání zatížení. Umožňuje vypisovat, monitorovat a reagovat na všechny spuštěné procesy Nodejs a podporuje režim clusteru.

Podporuje monitorování aplikací: nabízí jednoduchý způsob sledování využití prostředků (paměti a CPU) vaší aplikací. Podporuje váš pracovní postup správy procesů tím, že vám umožňuje konfigurovat a vyladit chování každé aplikace prostřednictvím souboru procesu (podporované formáty zahrnují Javascript, JSON a YAML<).

Protokoly aplikací jsou v produkčním prostředí vždy klíčové, v tomto ohledu vám PM2 umožňuje snadno spravovat protokoly vaší aplikace. Poskytuje různé způsoby a formáty pro manipulaci a zobrazování protokolů. Protokoly můžete zobrazovat v reálném čase, vyprázdnit je a v případě potřeby znovu načíst.

Důležité je, že PM2 podporuje spouštěcí skripty, které můžete nakonfigurovat tak, aby automaticky spouštěly procesy při očekávaných nebo neočekávaných restartech počítače. Podporuje také automatické restartování aplikace při změně souboru v aktuálním adresáři nebo jeho podadresářích.

Kromě toho PM2 přichází s modulovým systémem, který uživatelům umožňuje vytvářet vlastní moduly pro řízení procesů Nodejs. Můžete například vytvořit modul pro modul rotace protokolů nebo vyvažování zátěže a mnoho dalšího.

V neposlední řadě, pokud používáte kontejnery Docker, PM2 umožňuje integraci kontejnerů a nabízí systém API, který vám umožňuje používat jej programově.

2. StrongLoop PM

StrongLoop PM je také pokročilý manažer produkčních procesů s otevřeným zdrojovým kódem pro aplikace Node.js s vestavěným vyrovnáváním zátěže, stejně jako PM2, a lze jej použít pomocí příkazu- linka nebo grafické rozhraní.

Podporuje monitorování aplikací (zobrazení metrik výkonu, jako jsou časy smyček událostí, spotřeba CPU a paměti), nasazení na více hostitelích, režim clusteru, restartování a upgrady aplikací s nulovými prostoji, automatický restart procesu při selhání a agregaci a správu protokolů.

Kromě toho se dodává s podporou Docker, umožňuje exportovat metriky výkonu na servery kompatibilní se StatsD a zobrazovat je v konzolích třetích stran, jako jsou DataDog, Graphite<, Splunk a také soubory protokolu Syslog a raw.

3. Navždy

Forever je open source, jednoduchý a konfigurovatelný nástroj rozhraní příkazového řádku pro nepřetržité spouštění daného skriptu (navždy). Je vhodný pro spouštění menších nasazení aplikací a skriptů Node.js. navždy můžete používat dvěma způsoby: pomocí příkazového řádku nebo vložením do kódu.

Umožňuje vám spravovat (spustit, vypsat, zastavit, zastavit vše, restartovat, restartovat vše atd..) procesy Node.js a podporuje sledování změn souborů, režim ladění, protokoly aplikací, zabíjení přizpůsobení procesu a výstupního signálu a mnoho dalšího. Kromě toho podporuje několik možností použití, které můžete předat přímo z příkazového řádku nebo je předat v souboru JSON.

4. SystemD – Správce služeb a systému

V Linuxu je Systemd démon, který spravuje systémové prostředky, jako jsou procesy a další součásti souborového systému. Jakýkoli zdroj spravovaný systemd se nazývá jednotka. Existují různé typy jednotek včetně služeb, zařízení, zásuvky, držáku, cíle a mnoha dalších jednotek.

Systemd spravuje jednotky prostřednictvím konfiguračního souboru známého jako unit soubor. Proto, abyste mohli spravovat svůj server Node.js jako jakékoli jiné systémové služby, musíte pro něj vytvořit soubor jednotky, což bude v tomto případě soubor služby.

Jakmile vytvoříte soubor služby pro váš server Node.js, můžete jej spustit, povolit mu automatické spouštění při spouštění systému, zkontrolovat jeho stav, restartovat (zastavit a znovu spustit) nebo znovu načtěte jeho konfiguraci a dokonce ji zastavte jako kteroukoli jinou službu systemd.

Další informace naleznete v části: Jak vytvořit a spustit nové servisní jednotky v Systemd pomocí skriptu Shell

souhrn

Správce balíčků Node.js je užitečný nástroj pro nasazení vašeho projektu v produkčním prostředí. Udržuje aplikaci při životě navždy a zjednodušuje, jak ji můžete ovládat. V tomto článku jsme zkontrolovali čtyři správce balíčků pro Node.js. Máte-li nějaké doplňky nebo dotazy, kontaktujte nás pomocí níže uvedeného formuláře zpětné vazby.