대체/재시도 전략

이 항목에서는 동적 인제스트 요청에 대한 대체/재시도 전략의 필요성에 대해 설명하고 이를 구현하는 방법에 대한 간략한 설명을 제공합니다.

배경

동적 인제스트는 다음 두 가지 방법으로 계정 당 속도 제한을 부과합니다.

  • 초당 20개 이하의 요청 (CMS API 및/또는 인제스트 API 요청) 이 허용됩니다.
  • 동시 일반 우선 순위 작업은 100개 이하로 허용됩니다.

첫 번째는 앱에서 관리하기가 어렵지 않습니다. 요청간에 3 초 이상의 지연을 부과 할 수 있습니다. 두 번째는 시스템을 직접 쿼리하여 현재 처리 중인 작업 수를 결정할 방법이 없기 때문에 더 복잡합니다. 또는낮은 우선 순위 큐그러면 100개 이상의 작업을 대기열에 추가할 수 있습니다.

일정 시간 동안 기다렸다가 성공할 때까지 요청을 재시도할 수 있지만 다음을 수신하여 보다 합리적인 폴백/재시도 시스템을 구현할 수 있습니다. 알림 Dynamic Ingest 시스템에서 정보를 사용하여 진행 중인 작업을 직접 추적합니다.

이를 구현하는 한 가지 방법은 인제스트 요청을 제출하고 알림을 수신하는 트랜시버 앱을 빌드하는 것입니다. 아래 다이어그램은 이러한 앱의 상위 수준 논리를 보여줍니다.

트랜시버 로직
트랜시버 로직

샘플 앱

샘플 소스를 찾을 수 있습니다. 노드 익스프레스이것의 앱 Github 저장소