Laufzeit-Prozesse

Dies sind die Prozesse, die für deine Anwendung benötigt werden. Wenn du eine Anwendung hinzufügst und den Startbefehl für den Webprozess nicht angibst, versucht Kinsta, den erforderlichen Startbefehl bei der ersten Bereitstellung automatisch zu erkennen. Das Startkommando für eine Node.js-Anwendung kann z. B. npm start oder yarn start sein. Dies kann nicht entfernt werden, und du kannst nur einen Webprozess pro Anwendung haben.

Du kannst auch deine eigenen Befehle in MyKinsta im Abschnitt Prozesse deiner Anwendung bearbeiten und definieren. Ein Beispiel dafür siehst du in unserer Beispielanwendung.

Neben dem Webprozess kannst du auch Hintergrundprozesse/Worker hinzufügen. Die Anzahl der Prozesse, die du hinzufügen kannst, ist nicht begrenzt; allerdings benötigt jeder Prozess mindestens einen Pod, um zu laufen.

Du kannst die Größe deines Pods ändern (vertikale Skalierung) und festlegen, wie viele Pods gleichzeitig laufen (horizontale Skalierung).

  • Vertikale Skalierung ist ideal, um Pods mehr Leistung für ressourcenintensive Aufgaben zu geben.
  • Die horizontale Skalierung eignet sich hervorragend für die Ausfallsicherheit und den Lastausgleich bei Anwendungen, die viele Anfragen verarbeiten. Du könntest zum Beispiel 3 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.
Anwendungslaufzeitprozesse und Build-Prozess in MyKinsta.
Anwendungslaufzeitprozesse und Build-Prozess in MyKinsta.

Definieren von Prozessen in MyKinsta

Wenn du, wie oben beschrieben, eine Anwendung bereitstellst, kannst du einen Webprozessbefehl festlegen oder Kinsta den Standardbefehl setzen lassen. Du kannst auch deine eigenen Befehle in MyKinsta im Abschnitt Prozesse deiner Anwendung bearbeiten und definieren. Ein Beispiel dafür siehst du in unserem Beispiel-Deployment.

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

  • Name: Der Prozessname, z. B. „Worker“.
  • Typ: Hintergrundjob.
  • 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.
  • Instanzen: Die Anzahl der benötigten Instanzen, bis zu einem Maximum von fünf. Jede Instanz steht für einen Pod, und die Instanzen verwenden alle dieselbe Pod-Größe. Du kannst nicht für jede Instanz eine andere Pod-Größe festlegen.

Du kannst die Details jedes Prozesses, einschließlich der Pod-Größe, jederzeit ändern. Alle Änderungen, die du vornimmst, mit Ausnahme des Namens, lösen automatisch den Rollout-Prozess für die Anwendung aus.

Build-Prozess

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

Definition von Prozessen in einem Procfile

Procfiles definieren Prozesse aus dem Code deiner Anwendung und sollten in deinem Repository abgelegt 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.