루프
박스는 네 개입니다. 모두 전용 출력으로 본체를 내보내고, 작업이 끝나면 done
포트로 이를 알립니다.
ForEach (각 요소마다)
Section titled “ForEach (각 요소마다)”목록을 순회합니다.
| 입력 | items (json) |
| 출력 | each — 요소마다 한 번씩 |
| 설정 | parallelism: { enabled, count } |
병렬 실행을 쓰지 않으면 반복은 순차적으로 이어집니다. 쓰면 count 개까지
동시에 실행됩니다(최소 2).
done 포트는 반복의 하위 그래프가 모두 끝난 뒤에야 발생합니다. 요약이나
정리 작업을 연결하는 곳이 바로 여기입니다.
HTTP 요청 ──response[body.ids]──► ForEach (병렬 4) ├─ each ──► HTTP 요청 “상세” └─ done ──► Log “완료”For (반복)
Section titled “For (반복)”숫자 루프입니다.
| 입력 | from, to, step (숫자) |
| 출력 | each — 이름은 index |
| 설정 | from, to, operator (기본값 <, 또는 ≤, =, ≥, >, ≠), step (0은 1로 처리), parallelism |
While (조건 반복)
Section titled “While (조건 반복)”먼저 판정하는 루프입니다.
| 입력 | left, right |
| 출력 | then — 이름은 본체, 순수한 신호 |
| 설정 | operator, left, right |
본체는 신호입니다. 값을 실어 나르지 않습니다. 조건을 다시 판정하려면 본체의 끝을
While 박스의 in 포트로 되돌려 연결하십시오.
카운터나 종료 조건으로는 실행 변수를 사용하십시오.
Do…While (나중 판정 반복)
Section titled “Do…While (나중 판정 반복)”앞의 것과 같지만 본체가 적어도 한 번은 실행됩니다. 판정이 그 뒤에 일어납니다. 출력의 이름은 루프 입니다.
어느 것을 고를까
Section titled “어느 것을 고를까”| 상황 | 박스 |
|---|---|
| 목록이 있다 | ForEach |
| 반복 횟수를 알고 있다 | For |
| 종료 조건이 결과에 달려 있고, 먼저 판정한다 | While |
| 같지만 적어도 한 바퀴는 돌아야 한다 | Do…While |
| 실패하면 다시 시도하고 싶다 | Retry |
부하에 주의
Section titled “부하에 주의”ForEach와 For의 병렬 실행은 실제 네트워크 호출을 동시에 내보냅니다. 스테이징 환경에서는 값을 조금씩 올려 가십시오. 그리고 속도를 고르게 하려면 대기 박스를 떠올리십시오.