AWS 배치 작업 (또는 대기열)의 최대 실행 시간을 설정하는 방법이 있습니까? 이는 대부분의 배치 관리자에서 표준 설정으로 어떤 이유로 든 작업이 중단 될 때 자원 낭비를 방지합니다.AWS 배치 작업에서 월간을 설정할 수있는 방법이 있습니까?
답변
AFAIK이 작업을 수행 할 기능이 없습니다. 그러나 유사한 질문은 forum에 해결 방법이 제안되었습니다.
하나의 아이디어 단계 기능에서 활동으로 배치를 호출하는 작업에서 일정 (예를 들어, 매 분마다) 다시 을 핑백하는 것입니다. 이 응답을 멈 추면 해당 상황을 활동에서 시간 초과로 감지하고 이에 따라 조치를 취할 수 있습니다 (작업 종료 등). 이상적인 솔루션이 아닙니다 (특히 작업이 "좀비"로 계속 핑 백하는 경우), 하지만 시작에 불과합니다. 또한 데이터베이스에 활동 토큰을 저장하여 작업 일 ID로 추적해야 할 가능성이 높습니다.
다른 방법으로, 2 단계로 그 설정을 분할하고, 상기 제 1 상태에서 람다에서 일괄에게 작업을 예약 한 후 에 두 번째 단계를 일괄 작업 ID를 전달하는 (다른 람다에서) 다음 여론 조사 배치의 Retry 및 IntervalSeconds (예 : 1 분에 1 회, 지수 백 오프의 경우 ) 및 제한 시간을 기준으로 계산 된 MaxAttempts가있는 상태입니다. 이렇게하면 외부 상태 저장소 메커니즘, 긴 폴링 또는 작업에서 "ping back"(더 이상 일 수 있음)이 필요하지 않지만 단점은 더 많은 단계입니다.
가 일괄 작업에 timeout
을 설정하는 옵션 없지만 할 수 있습니다 설정 1 시간마다 트리거 정도 및 이전 24 hours
말을 만들어 작업을 삭제하는 람다 함수.
aws와 (과) 관련하여 일괄 작업의 최대 실행 시간을 설정할 수 없습니다. 그러나 활용할 수있는 대체 방법이 있습니다. AWS Forum
슬프게도 AWS Batch에서 제한 실행 시간을 설정할 방법이 없습니다. 한 가지 해결 방법은 실행 제한 시간을 예약하기 위해 도커의 진입 점을 편집하는 것일 수 있습니다.
@asdfg Walltime은 경과 시간을 나타내며 오타가 아닙니다. – SriniV