실험용 함수를 병렬 단계로 교체

Workflows의 실험용 함수experimental.executions.map은 해당하는 각 인수에 대해 워크플로 실행을 시작하고, 모든 실행이 완료되기를 기다리고, 각 요소가 실행 결과로 구성된 목록을 반환합니다.

experimental.executions.map을 사용하여 병렬 작업을 지원하는 경우 병렬 단계를 대신 사용하도록 워크플로를 마이그레이션하여 일반적인 for 루프를 병렬로 실행할 수 있습니다.

parallel 단계는 두 개 이상의 단계가 동시에 실행될 수 있는 워크플로 부분을 정의합니다. parallel 단계는 여기에 정의된 모든 단계가 완료되거나 미처리 예외로 인해 중단될 때까지 기다린 후 실행을 계속합니다. experimental.executions.map과 마찬가지로 실행 순서는 보장되지 않습니다. 자세한 내용은 병렬 단계의 구문 참조 페이지를 참조하세요.

experimental.executions.map 또는 workflows.executions.run을 사용하려면 동시 실행 할당량이 추가로 필요합니다. 그러나 인라인 커넥터 호출과 함께 병렬 단계를 사용하는 경우(번역 커넥터 예시 참조) 추가 실행 할당량이 필요하지 않습니다.

다음은 experimental.executions.map 사용을 parallel 단계로 교체할 때 도움이 되는 예시입니다.

번역 워크플로

소스 언어와 대상 언어가 제공되었으면 translate라는 다음 워크플로가 Cloud Translation 커넥터를 사용하여 일부 입력 텍스트를 번역하고 결과를 반환합니다. Cloud Translation API를 사용 설정해야 합니다.

YAML

  main:
    params: [args]
    steps:
    - basic_translate:
        call: googleapis.translate.v2.translations.translate
        args:
          body:
            q: ${args.text}
            target: ${args.target}
            format: "text"
            source: ${args.source}
        result: r
    - return_step:
        return: ${r}

JSON

  {
    "main": {
      "params": [
        "args"
      ],
      "steps": [
        {
          "basic_translate": {
            "call": "googleapis.translate.v2.translations.translate"