Azure Logic Apps에서 워크플로 작업에 대한 병렬 분기 만들기 또는 조인

적용 대상: Azure Logic Apps(소비)

기본적으로 논리 앱 워크플로의 작업은 순차적으로 실행됩니다. 독립적인 작업을 동시에 수행하려면 병렬 분기를 만든 다음, 나중에 흐름에서 이러한 분기를 조인할 수 있습니다.

배열을 받는 트리거가 있고 각 배열 항목에 대한 워크플로를 실행하려는 경우, SplitOn 트리거 속성을 사용하여 해당 배열을 분리 처리(debatch) 할 수 있습니다.

사전 요구 사항

병렬 분기 추가

독립적인 단계를 동시에 실행하려면 기존 단계 옆에 병렬 분기를 추가할 수 있습니다.

병렬로 단계 실행

논리 앱은 워크플로를 계속하기 전에 모든 분기가 완료될 때까지 기다립니다. runAfter 속성 값이 완료된 부모 단계의 상태와 일치할 때만 병렬 분기가 실행됩니다. 예를 들어 branchAction1branchAction2는 모두 parentActionSucceeded 상태로 완료될 때만 실행되도록 설정됩니다.

참고

시작하기 전에 논리 앱에 병렬 분기를 추가할 수 있는 단계가 이미 있어야 합니다.

  1. Azure Portal의 논리 앱 디자이너에서 논리 앱을 엽니다.

  2. 병렬 분기를 추가하려는 단계 위의 화살표 위로 포인터를 이동합니다. 표시되는 더하기 기호( + )를 선택한 다음, 병렬 분기 추가를 선택합니다.

    병렬 분기 추가

  3. 검색 상자에서 원하는 작업을 찾아서 선택합니다.

    Logic App Designer의

    이제 선택한 작업이 다음과 같이 병렬 분기에 표시됩니다.

    원하는 작업을 찾아서 선택

  4. 각 병렬 분기에 원하는 단계를 추가합니다. 분기에 또 다른 작업을 추가하려면 순차적 작업을 추가하려는 작업 아래로 포인터를 이동합니다. 표시되는 더하기 기호( + )를 선택한 다음, 작업 추가를 선택합니다.

    병렬 분기에 순차적 작업 추가

  5. 검색 상자에서 원하는 작업을 찾아서 선택합니다.

    Logic App Designer의

    이제 선택한 작업이 다음과 같이 현재 분기 내에 표시됩니다.

    순차적 작업을 찾아서 선택

분기를 다시 병합하려면 병렬 분기를 조인합니다.

병렬 분기 정의(JSON)

코드 뷰에서 작업하는 경우 논리 앱의 JSON 정의에서 병렬 구조를 대신 정의할 수 있습니다. 예를 들어 다음과 같습니다.

{
  "triggers": {
    "myTrigger": {}
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}

병렬 분기 조인

병렬 분기를 모두 병합하려면 모든 분기의 아래쪽에 단계를 추가하기만 하면 됩니다. 이 단계는 모든 병렬 분기의 실행이 완료된 후에 실행됩니다.

병렬 분기 조인

  1. Azure Portal의 Logic App Designer에서 논리 앱을 찾아서 엽니다.

  2. 조인하려는 병렬 분기에서 새 단계를 선택합니다.

    조인할 단계 추가

  3. 검색 상자에서 분기를 조인하는 단계로 원하는 작업을 찾아서 선택합니다.

    병렬 분기를 조인하는 작업을 찾아서 선택

    이제 병렬 분기가 병합되었습니다.

    조인된 분기

조인 정의(JSON)

코드 뷰에서 작업하는 경우 논리 앱의 JSON 정의에서 조인 구조를 대신 정의할 수 있습니다. 예를 들어 다음과 같습니다.

{
  "triggers": {
    "myTrigger": { }
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "joinAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "branchAction1": [
          "Succeeded"
        ],
        "branchAction2": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}

지원 받기

다음 단계