외부 시스템과 통합

이 페이지에서는 외부 시스템을 통합할 때 Journey Orchestration이 제공하는 다양한 보호 기능과 우수 사례를 보여 줍니다. 최대 가용량 API를 사용하여 외부 시스템의 보호를 최적화하는 방법, 여정 시간 제한을 구성하는 방법 및 다시 시도 작동 방법을 설명합니다.

Journey Orchestration을 사용하면 사용자 지정 데이터 소스 및 사용자 지정 작업을 통해 외부 시스템에 대한 연결을 구성할 수 있습니다. 예를 들어 외부 예약 시스템에서 가져온 데이터로 여정을 보강하거나 Epsilon 또는 Facebook과 같은 타사 시스템을 사용하여 메시지를 전송할 수 있습니다.

외부 시스템을 통합할 때 몇 가지 문제가 발생할 수 있고, 시스템이 느리거나, 응답을 중단할 수 있거나, 큰 볼륨을 처리하지 못할 수 있습니다. Journey Orchestration은 시스템이 오버로드되지 않도록 보호하기 위해 몇 가지 보안 기능을 제공합니다.

모든 외부 시스템은 성능 면에서 다릅니다. 사용 사례에 맞게 구성을 조정해야 합니다.

Journey Orchestration이 외부 API에 대한 호출을 실행하면 다음과 같이 기술 보호 기능이 실행됩니다.

  1. 최대 가용량 규칙이 적용됩니다. 최대 비율에 도달하면 나머지 호출은 무시됩니다.

  2. 시간 제한 및 다시 시도: 최대 가용량 규칙이 충족되면, Journey Orchestration은 시간 제한 기간이 끝날 때까지 호출을 수행하려고 합니다.

최대 가용량

기본 제공 Capping API는 외부 시스템을 보호하는 데 도움이 되는 업스트림 기술 보호 기능을 제공합니다.

외부 데이터 소스의 경우 초당 최대 호출 수는 15로 설정됩니다. 호출 수가 초당 15개를 초과하는 경우 나머지 호출은 무시됩니다. 비공개 외부 데이터 소스에 대해 이 제한을 늘릴 수 있습니다. 엔드포인트를 Adobe에 포함하려면에 허용 목록에 추가하다 문의하십시오. 이는 공용 외부 데이터 소스에는 사용할 수 없습니다.

사용자 지정 작업의 경우 외부 API의 용량을 평가해야 합니다. 예를 들어, Journey Optimizer이 초당 1000개의 호출을 전송하고 시스템이 초당 100개의 호출만 지원할 수 있는 경우 시스템이 포화되지 않도록 최대 가용량 규칙을 정의해야 합니다.

최대 가용량 규칙은 특정 끝점에 대한 샌드박스 수준에서 정의됩니다(호출하는 URL). 런타임 시 Journey Orchestration은 캡핑 규칙이 정의되어 있는지 확인하고 호출 중에 정의된 비율을 해당 종단점에 적용합니다. 호출 수가 정의된 속도를 초과하는 경우 나머지 호출은 삭제되고 보고에서 오류로 계산됩니다.

최대 가용량 규칙은 한 개의 종단점에 특정하지만 샌드박스의 모든 여정에 적용됩니다. 즉, 최대 가용량 슬롯은 샌드박스의 모든 여정 간에 공유됩니다.

예를 들어 외부 시스템에 대해 초당 100호출의 최대 가용량 규칙을 정의했다고 가정합니다. 시스템이 10개의 다른 여정에서 사용자 지정 작업에 의해 호출됩니다. 한 여정이 초당 200개의 호출을 받으면 사용 가능한 100개의 슬롯을 사용하고 나머지 100개의 슬롯을 버립니다. 최대 속도를 초과했으므로 다른 9개의 여정에 슬롯이 남아 있지 않습니다. 이러한 세부기간을 통해 외부 시스템을 오버로드 및 충돌으로부터 보호할 수 있습니다.

최대 가용량 API 및 최대 가용량 규칙을 구성하는 방법에 대한 자세한 내용은 이 페이지를 참조하십시오.

시간 초과 및 다시 시도

최대 가용량 규칙이 충족되면 시간 초과 규칙이 적용됩니다.

각 여정에서 시간 제한 기간을 정의할 수 있습니다. 외부 시스템을 호출할 때 최대 지속 시간을 설정할 수 있도록 해줍니다. 시간 초과 기간은 여정의 속성에 구성됩니다. 이 페이지를 참조하십시오.

이 시간 제한은 모든 외부 호출(사용자 지정 작업 및 사용자 지정 데이터 소스의 외부 API 호출)에 대해 전역적입니다. 기본적으로 5초로 설정되어 있습니다.

정의된 시간 제한 기간 동안 Journey Orchestration은 외부 시스템을 호출하려고 합니다. 첫 번째 호출 후에 시간 제한 기간이 끝날 때까지 최대 3회의 다시 시도를 수행할 수 있습니다. 다시 시도 횟수를 변경할 수 없습니다.

각 다시 시도에서는 하나의 슬롯을 사용합니다. 최대 가용량(초당 100개 호출)이 있고 각 호출에는 2회의 다시 시도가 필요한 경우 비율은 초당 30개 호출로 떨어집니다(각 호출에서는 3개의 슬롯을 사용합니다.). 첫 번째 호출과 두 번 다시 시도).

시간 제한 기간 값은 사용 사례에 따라 다릅니다. 예를 들어 클라이언트가 스토어에 들어갈 때 메시지를 빠르게 보내려면 긴 시간 제한을 설정하지 않아도 됩니다. 또한, 시간 제한이 길어질수록 더 많은 항목이 큐에 배치됩니다. 이는 성능에 크게 영향을 줄 수 있습니다. Journey Orchestration이 초당 1000개의 호출을 수행하는 경우 5~15초의 데이터를 유지하면 시스템이 빠르게 압도될 수 있습니다.

5초의 시간 초과에 대한 예를 살펴보겠습니다.

  • 첫 번째 호출은 5초 이내에 지속됩니다. 호출이 성공했지만 다시 시도하지 않습니다.
  • 첫 번째 호출은 5초 동안 지속됩니다. 통화가 취소되고 다시 시도되지 않습니다. 보고에서 시간 초과 오류로 카운트됩니다.
  • 2초 후 첫 번째 호출이 실패합니다(외부 시스템에서 오류 반환). 최대 가용한 경우 다시 시도할 때까지 3초가 남습니다.
    • 3회의 다시 시도 중 하나가 5초가 끝나기 전에 성공하면 호출이 수행되고 오류가 없습니다.
    • 다시 시도 중에 시간 제한 기간의 끝에 도달하면 호출이 취소되고 보고에서 시간 제한 오류로 카운트됩니다.

자주 묻는 질문

최대 가용량 규칙을 구성하려면 어떻게 해야 합니까? 기본 최대 가용량 규칙이 있습니까?

기본적으로 최대 가용량 규칙이 없습니다. 최대 가용량 규칙은 최대 가용량 API를 사용하여 특정 엔드포인트(호출된 URL)에 대한 샌드박스 수준에서 정의됩니다. 이 섹션이 페이지를 참조하십시오.

몇 번 다시 시도합니까? 다시 시도 횟수를 변경하거나 다시 시도 사이의 최소 대기 기간을 정의할 수 있습니까?

주어진 호출의 경우 시간 제한 기간이 끝날 때까지 첫 번째 호출 후 최대 3회의 다시 시도를 수행할 수 있습니다. 다시 시도 횟수와 각 다시 시도 사이의 시간은 변경할 수 없습니다. 이 섹션을 참조하십시오.

시간 초과는 어디에서 구성할 수 있습니까? 최대값이 있습니까?

각 여정에서 시간 제한 기간을 정의할 수 있습니다. 시간 초과 기간은 여정의 속성에 구성됩니다. 시간 제한 기간은 1초에서 30초 사이여야 합니다. 이 섹션이 페이지를 참조하십시오.

이 페이지에서는