4 Prozessmanager für den Knoten.JS -Anwendungen unter Linux

4 Prozessmanager für den Knoten.JS -Anwendungen unter Linux

A Knoten.JS Process Manager ist ein nützliches Werkzeug, um sicherzustellen, dass a Knoten.JS Process oder Skript wird kontinuierlich (für immer) ausgeführt und ermöglicht es, den Systemstart automatisch zu starten.

Sie können die laufenden Dienste überwachen und erleichtert gemeinsame Systemverwaltungsaufgaben (z. B. Neustart des Fehlers, Stoppen, Neuladenkonfigurationen ohne Ausfallzeiten, Umgebungsvariablen/-einstellungen, Anzeigen von Leistungsmetriken und vieles mehr). Es unterstützt auch Anwendungsprotokollierung, Clustering und Lastausgleich sowie so viele andere nützliche Prozessmanagementfunktionen.

Lesen Sie auch: 14 Beste NodeJS -Frameworks für Entwickler im Jahr 2019

Ein Paketmanager ist besonders für die Bereitstellung von nützlich Knoten.JS Anwendungen in einer Produktionsumgebung. In diesem Artikel werden wir vier Prozessmanager für überprüfen Knoten.JS Anwendungsverwaltung in einem Linux -System.

1. PM2

PM2 ist eine Open-Source, Fortgeschrittene, Funktionsreiche, plattformübergreifend und der beliebteste Prozessmanager auf Produktionsebene für Knoten.JS mit einem eingebauten Lastausgleicher. Sie können alle gestartet auflisten, überwachen und darauf handeln Nodejs Prozesse, und es unterstützt den Clustermodus.

Installieren Sie PM2, um NodeJS -Apps unter Linux auszuführen

Es unterstützt die Anwendungsüberwachung: bietet eine einfache Möglichkeit, die Nutzung Ihrer Anwendung der Ressource (Speicher und CPU) zu überwachen. Sie unterstützt Ihren Prozessverwaltungs -Workflow, indem Sie das Verhalten jeder Anwendung über eine Prozessdatei konfigurieren und stimmen (unterstützte Formate enthalten JavaScript, JSON, Und Yaml).

Anwendungsprotokolle sind in dieser Hinsicht immer der Schlüssel in einer Produktionsumgebung PM2 Ermöglicht Ihnen die einfachen Verwaltung der Protokolle Ihrer Anwendung. Es bietet unterschiedliche Möglichkeiten und Formate für die Handhabung und Anzeige von Protokollen. Sie können Protokolle in Echtzeit anzeigen, sie spülen und bei Bedarf neu laden.

Wichtig, PM2 Unterstützt Startskripte, die Sie konfigurieren können, um Ihre Prozesse automatisch über erwartete oder unerwartete Maschinen-Neustarts hinweg zu starten. Es unterstützt auch das Auto-RESTART einer Anwendung, wenn eine Datei im aktuellen Verzeichnis oder in ihren Unterverzeichnissen geändert wird.

Zusätzlich, PM2 Kommt mit einem Modulsystem, mit dem Benutzer benutzerdefinierte Module für das NodeJS -Prozessmanagement erstellen können. Sie können beispielsweise ein Modul für das Protokolldrehmodul oder ein Lastausgleich und vieles mehr erstellen.

Wenn Sie Docker -Container verwenden, ermöglicht PM2 eine Containerintegration und bietet ein API -System, mit dem Sie es programmatisch verwenden können.

2. StrongLoop PM

StrongLoop PM ist auch ein Open-Source-Manager für fortschrittliche Produktionsprozess für den Prozess Knoten.JS Anwendungen mit integriertem Lastausgleich genauso wie PM2 und es kann über eine Befehlszeile oder eine grafische Schnittstelle verwendet werden.

Strongloop PM -Prozessmanager für NodeJs

Es unterstützt die Anwendungsüberwachung (Anzeigenleistung Metriken wie Ereignisschleifenzeiten, CPU und Speicherverbrauch), mehrwertige Bereitstellungen, Clustermodus, Null-DownTime-Anwendungsanwendungen und Upgrades, automatischer Prozess neu starten beim Ausfall und Protokollaggregation und -verwaltung.

Darüber hinaus wird es mit dem Versand mit Docker Unterstützung, ermöglicht es Ihnen, Leistungsmetriken auf StatsD-kompatible Server zu exportieren und auf Drittanbieter-Konsolen wie z Datadog, Graphit, Splunk sowie Syslog- und Rohprotokolldateien.

3. Für immer

Forever ist ein Open-Source, einfaches und konfigurierbares Befehlszeilen-Schnittstellen-Tool, um ein bestimmtes Skript kontinuierlich auszuführen (für immer). Es eignet sich für die Ausführung kleinerer Bereitstellungen von Knoten.JS Apps und Skripte. Sie können verwenden für immer Auf zwei Arten: durch die Befehlszeile oder durch Einbettung in Ihren Code.

Führen Sie für immer Skripte aus kontinuierlich aus

Sie können verwalten (starten, auflisten, anhalten, alle stoppen, neu starten, alle neu starten usw.) Knoten.JS Prozesse und IT unterstützt das Beobachten von Dateiänderungen, Debug -Modus, Anwendungsprotokolle, Tötung eines Prozess- und Ausgangssignalanpassung und vieles mehr. Darüber hinaus unterstützt es mehrere Verwendungsoptionen, die Sie direkt aus der Befehlszeile übergeben oder sie in einer JSON -Datei passen können.

4. Systemd - Service und Systemmanager

In Linux ist Systemd ein Daemon, das Systemressourcen wie Prozesse und andere Komponenten des Dateisystems verwaltet. Jede Ressource, die von verwaltet wird systemd ist als a bekannt Einheit. Es gibt verschiedene Arten von Einheiten einschließlich Service, Gerät, Sockel, Mount, Ziel und vielen anderen Einheiten.

Systemd verwaltet Einheiten über eine Konfigurationsdatei, die als a bekannt ist Einheit Datei. Um Ihre zu verwalten, um Ihre zu verwalten Knoten.JS Server wie alle anderen Systemdienste müssen Sie dafür eine Einheitsdatei erstellen, die in diesem Fall eine Servicedatei ist.

Sobald Sie eine Servicedatei für Ihre erstellt haben Knoten.JS Der Server, Sie können es starten, es aktivieren, um zur Systemstartzeit automatisch zu starten, den Status zu überprüfen, neu zu starten (stoppen und erneut starten) oder seine Konfiguration neu laden und sogar wie alle anderen Systemdienste stoppen.

Weitere Informationen finden Sie unter: Erstellen und Ausführen neuer Serviceeinheiten in SystemD mithilfe von Shell Skript

Zusammenfassung

A Knoten.JS Package Manager ist ein nützliches Instrument für die Bereitstellung Ihres Projekts in einer Produktionsumgebung. Es hält eine Anwendung für immer am Leben und vereinfacht, wie Sie sie kontrollieren können. In diesem Artikel haben wir vier Paketmanager für überprüft Knoten.JS. Wenn Sie Ergänzungen oder Fragen zu stellen haben, verwenden Sie das unten stehende Feedback -Formular, um uns zu erreichen.