Die Seite Prozesse zeigt die Laufzeit- und Build-Prozesse deiner Anwendung an. Du kannst hier auch deine eigenen Laufzeitbefehle bearbeiten und definieren. In unserer Beispielanwendung Wetterlogger findest du ein detailliertes Beispiel für die Konfiguration eines Prozesses.

Runtime-Prozesse

Dies sind die Prozesse, die für deine Anwendung benötigt werden.

Prozess-Typen

Web-Prozess

Der Webprozess führt deine Anwendung aus. Wenn du beim Hinzufügen einer Anwendung den Startbefehl für den Webprozess nicht angibst, versucht Kinsta, ihn bei der ersten Bereitstellung automatisch zu erkennen. Der Startbefehl für eine Node.js-Anwendung kann zum Beispiel npm start oder yarn start sein.

Du kannst den Webprozess nicht entfernen, und du kannst nur einen Webprozess pro Anwendung haben.

Background worker

Ein Background-Workerprozess läuft im Hintergrund, getrennt von deiner Hauptanwendung. Hintergrund-Worker-Prozesse sind ideal für langwierige Aufgaben wie die Erstellung von Berichten oder die Verarbeitung großer Datenmengen. Diese Art von Prozess ist nicht dafür gedacht, als einmaliger Job ausgeführt zu werden, der nach einer bestimmten Zeit beendet wird. Wenn ein Hintergrundprozess seine Arbeit beendet, wird der Pod heruntergefahren, neu gestartet und der Prozess wiederholt.

Es gibt keine Begrenzung für die Anzahl der Hintergrundprozesse, die du hinzufügen kannst; allerdings benötigt jeder Prozess mindestens einen Pod, um zu laufen.

Cron-Job-Prozess

Mit einem Cron-Job-Prozess kannst du einen Prozess in einem bestimmten Intervall für deine Anwendung planen, um sich wiederholende Aufgaben zu automatisieren. Ähnlich wie bei einem Background worker benötigt jeder Cron-Job-Prozess mindestens einen Pod, um ausgeführt zu werden, wird aber nur zu dem konfigurierten Zeitpunkt gestartet und nach Beendigung des erforderlichen Vorgangs wieder heruntergefahren.

Prozesse in MyKinsta definieren

Um einen neuen Prozess hinzuzufügen, klicke auf Prozess erstellen und fülle die Felder wie folgt aus:

  • Name: Der Name des Prozesses, z. B. „Worker.“
  • Typ: Wähle einen Background Worker oder Cron Job.
  • Startbefehl: Der Befehl, der zum Starten des Prozesses erforderlich ist, z. B. npm run [process].
  • Pod-Größe: Wähle die CPU und den Arbeitsspeicher, die für den Prozess vorgesehen sind.
    • Hinweis: Wenn du eine Hobby-Pod-Größe für deinen Webprozess auswählst, kannst du deiner Anwendung keine eigene Domain hinzufügen. Wenn du eine eigene Domain für deine Anwendung haben musst, kannst du jederzeit ein Upgrade durchführen.
  • Instanzen: Die Anzahl der benötigten Instanzen, bis zu einem Maximum von 50. Jede Instanz stellt einen Pod dar, und alle Instanzen verwenden dieselbe Pod-Größe. Du kannst nicht für jede Instanz eine andere Pod-Größe festlegen.

Definition von Prozessen in einem Procfile

Procfiles definieren Prozesse aus dem Code deiner Anwendung und sollten in dein Repository übertragen werden. Ein Procfile enthält einen Prozess pro Zeile im folgenden Format:

process_name: command

Um zum Beispiel eine Laravel-Anwendung auszuführen, könntest du Folgendes verwenden:

web: php artisan serve --host 0.0.0.0 --port 8080

Wenn du ein Procfile verwendest, musst du einen Prozess namens web definieren, um sicherzustellen, dass der Container Webanfragen erfüllt.

Skalierung der Anwendungsressourcen

Du kannst die Pod-Größe jedes Prozesses ändern (vertikale Skalierung) und festlegen, wie viele Pods gleichzeitig ausgeführt werden (horizontale Skalierung). Alle Änderungen, die du vornimmst, außer der Änderung des Namens, lösen automatisch den Rollout-Prozess für die Anwendung aus.

  • Vertikale Skalierung ist ideal, um Pods mehr Leistung für ressourcenintensive Aufgaben zu geben.
  • Die horizontale Skalierung ist ideal für die Ausfallsicherheit und den Lastausgleich bei Anwendungen, die viele Anfragen verarbeiten. Du könntest zum Beispiel drei Versionen desselben Pods betreiben. Die zugrunde liegende Technologie leitet die Anfragen an einen der drei Pods weiter und verteilt so die Last zwischen ihnen. Wenn ein Pod instabil wird, werden die Anfragen an die anderen beiden weitergeleitet, bis der dritte Pod wieder in Ordnung ist.

Du kannst die Details eines jeden Prozesses, einschließlich der Pod-Größe, jederzeit ändern. Wenn deine Anwendung zustandslos ist (kein persistenter Speicher), kannst du die automatische horizontale Skalierung für den Webprozess aktivieren. Damit kannst du eine minimale und maximale Anzahl von Instanzen (bis zu 10) festlegen, zwischen denen der Prozess bei Bedarf skalieren muss. Weitere Informationen zum Ändern der Pod-Größe und anderen Skalierungsoptionen findest du unter Skalieren von Anwendungsressourcen.

Build-Prozess

Hier siehst du die Build-Maschine, die der Build-Prozess verwendet. Wenn du auf Build aktualisieren klickst, kannst du die für den Build-Prozess verwendeten Ressourcen ändern.