Auszeiten bei Job - AWS Batch

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Auszeiten bei Job

Sie können ein Timeout für Ihre Aufträge so konfigurieren, dass AWS Batch den Auftrag beendet, wenn die Ausführung länger als den angegebenen Wert dauert. Sie haben beispielsweise einen Auftrag, der zu seiner Ausführung Ihres Wissens nach nur 15 Minuten in Anspruch nehmen sollte. Manchmal bleibt Ihre Anwendung in einer Schleife hängen und wird endlos ausgeführt. Sie können also eine Zeitbeschränkung von 30 Minuten festlegen, bis der hängen gebliebene Auftrag beendet wird.

Wichtig

StandardmäßigAWS Batch gibt es kein Job-Timeout. Wenn Sie kein Job-Timeout definieren, wird der Job ausgeführt, bis der Container beendet wird.

Sie geben entweder in Ihrer Auftragsdefinition oder bei der Übermittlung des Auftrags einen attemptDurationSeconds-Parameter an, der einen Mindestwert von 60 Sekunden haben muss. Wenn diese Sekundenanzahl nach dem startedAt-Zeitstempel verstrichen ist, beendet AWS Batch den Auftrag. Auf der Datenverarbeitungsressource empfängt Ihr Auftrags-Container ein SIGTERM-Signal, um Ihrer Anwendung die Möglichkeit zu geben, ordnungsgemäß zu schließen. Wenn sich der Container nach 30 Sekunden noch immer in der Ausführung befindet, wird ein SIGKILL-Signal gesendet, um den Container zwangsweise herunterzufahren.

Timeout-Beendigungen werden auf einer Best-Effort-Basis abgewickelt. Sie sollten nicht erwarten, dass Ihr Timeout genau dann beendet wird, wenn das Timeout für den Jobversuch abgelaufen ist (es kann einige Sekunden länger dauern). Wenn Ihre Anwendung eine genaue Timeout-Ausführung benötigt, sollten Sie diese Logik innerhalb der Anwendung implementieren. Wenn Sie eine große Anzahl von Aufträgen haben, bei denen gleichzeitig Zeitüberschreitungen auftreten, werden die Timeout-Beendigungen in einer FIFO(First-in-First-out)-Warteschlange abgearbeitet, wobei Aufträge stapelweise beendet werden.

Anmerkung

Es gibt keinen maximalen Timeout-Wert für einenAWS Batch Job.

Wenn ein Job wegen Überschreitung der Timeout-Dauer beendet wird, wird er nicht erneut versucht. Wenn ein Auftragsversuch fehlschlägt, kann er wiederholt werden, wenn Wiederholversuche aktiviert sind, und der Zeitüberschreitungs-Countdown wird für den neuen Versuch erneut gestartet.

Wichtig

Aufträge, die auf Fargate-Ressourcen ausgeführt werden, können nicht länger als 14 Tage ausgeführt werden. Wenn die Timeout-Dauer 14 Tage überschreitet, sind die Fargate-Ressourcen möglicherweise nicht mehr verfügbar und der Job wird beendet.

Bei Array-Aufgaben haben untergeordnete Aufträge dieselbe Timeout-Konfiguration wie der übergeordnete Auftrag.

Weitere Informationen zum Übergeben eines AWS Batch-Auftrags mit einer Timeout-Konfiguration finden Sie unter Senden eines Auftrags.