Learn how to configure dynamic infrastructure provisioning with work pools
Type | Description | You run a worker |
---|---|---|
Hybrid | a worker in your infrastructure submits runs to your infrastructure | Yes |
Push | runs are automatically submitted to your configured serverless infrastructure provider | No |
Managed | runs are automatically submitted to Prefect-managed infrastructure | No |
Infrastructure Type | Description |
---|---|
Process | Execute flow runs as subprocesses on a worker. Works well for local execution when first getting started. |
AWS Elastic Container Service | Execute flow runs within containers on AWS ECS. Works with EC2 and Fargate clusters. Requires an AWS account. |
Azure Container Instances | Execute flow runs within containers on Azure’s Container Instances service. Requires an Azure account. |
Docker | Execute flow runs within Docker containers. Works well for managing flow execution environments through Docker images. Requires access to a running Docker daemon. |
Google Cloud Run | Execute flow runs within containers on Google Cloud Run. Requires a Google Cloud Platform account. |
Google Cloud Run V2 | Execute flow runs within containers on Google Cloud Run (V2 API). Requires a Google Cloud Platform account. |
Google Vertex AI | Execute flow runs within containers on Google Vertex AI. Requires a Google Cloud Platform account. |
Kubernetes | Execute flow runs within jobs scheduled on a Kubernetes cluster. Requires a Kubernetes cluster. |
Google Cloud Run - Push | Execute flow runs within containers on Google Cloud Run. Requires a Google Cloud Platform account. Flow runs are pushed directly to your environment, without the need for a Prefect worker. |
AWS Elastic Container Service - Push | Execute flow runs within containers on AWS ECS. Works with existing ECS clusters and serverless execution through AWS Fargate. Requires an AWS account. Flow runs are pushed directly to your environment, without the need for a Prefect worker. |
Azure Container Instances - Push | Execute flow runs within containers on Azure’s Container Instances service. Requires an Azure account. Flow runs are pushed directly to your environment, without the need for a Prefect worker. |
Modal - Push | Execute flow runs on Modal. Requires a Modal account. Flow runs are pushed directly to your Modal workspace, without the need for a Prefect worker. |
Coiled | Execute flow runs in the cloud platform of your choice with Coiled. Makes it easy to run in your account without setting up Kubernetes or other cloud infrastructure. |
Prefect Managed | Execute flow runs within containers on Prefect managed infrastructure. |
1
being the highest priority.
You can add new queues without changing the rank of the higher-priority queues.
10
and no concurrency limit5
and a concurrency limit of 3
1
and a concurrency limit of 1
READY
status when it has been polled by a worker in the last 60 seconds. Pausing a work queue gives it a
PAUSED
status and means that it will accept no new work until it is unpaused. A user can control the work queue’s paused status in the UI.
Unpausing a work queue gives the work queue a NOT_READY
status unless a worker has polled it in the last 60 seconds.