- Get Started
- Product
- Resources
- Tools & SDKs
- Framework
- Reference
Menu
- Get Started
- Product
- Resources
- Tools & SDKs
- Framework
- Reference
3.6.9. Run Workflow Steps in Parallel
In this chapter, you’ll learn how to run workflow steps in parallel.
parallelize Utility Function#
If your workflow has steps that don’t rely on one another’s results, run them in parallel using parallelize
from the Workflows SDK.
The workflow waits until all steps passed to the parallelize
function finish executing before continuing to the next step.
For example:
11} from "./steps"12 13interface WorkflowInput {14 title: string15}16 17const myWorkflow = createWorkflow(18 "my-workflow", 19 (input: WorkflowInput) => {20 const product = createProductStep(input)21 22 const [prices, productSalesChannel] = parallelize(23 createPricesStep(product),24 attachProductToSalesChannelStep(product)25 )26 27 const id = product.id28 const refetchedProduct = getProductStep(product.id)29 30 return new WorkflowResponse(refetchedProduct)31 }32)
The parallelize
function accepts the steps to run in parallel as a parameter.
It returns an array of the steps' results in the same order they're passed to the parallelize
function.
So, prices
is the result of createPricesStep
, and productSalesChannel
is the result of attachProductToSalesChannelStep
.
Was this chapter helpful?