You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-scale.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ The following is a summary of the benefits of the various options for Azure Func
35
35
36
36
| Option | Benefits |
37
37
| --- | --- |
38
-
|**[Flex Consumption plan]**| Get rapid horizontal scaling with compute choices, virtual networking, and pay-as-you-go billing.<br/><br/>On the Flex Consumption plan, instances of the Functions host are dynamically added and removed based on the configured per instance concurrency and the number of incoming events. <br/><br/> ✔ Reduce cold starts by specifying a number of pre-provisioned (always ready) instances.<br/> ✔ Supports virtual networking for added security.<br/>✔ Pay when your functions are running.<br/>✔ Scales automatically, even during periods of high load.|
38
+
|**[Flex Consumption plan]**| Get rapid horizontal scaling with compute choices, virtual networking, and pay-as-you-go billing.<br/><br/>On the Flex Consumption plan, instances of the Functions host are dynamically added and removed based on the configured per instance concurrency and the number of incoming events. <br/><br/> ✔ Reduce cold starts by specifying one or more pre-provisioned (always ready) instances.<br/> ✔ Supports virtual networking for added security.<br/>✔ Pay when your functions are running.<br/>✔ Scales automatically, even during periods of high load.|
39
39
|**[Premium plan]**|Automatically scales based on demand using prewarmed workers, which run applications with no delay after being idle, runs on more powerful instances, and connects to virtual networks. <br/><br/>Consider the Azure Functions Premium plan in the following situations: <br/><br/>✔ Your function apps run continuously, or nearly continuously.<br/>✔ You want more control of your instances and want to deploy multiple function apps on the same plan with event-driven scaling.<br/>✔ You have a high number of small executions and a high execution bill, but low GB seconds in the Consumption plan.<br/>✔ You need more CPU or memory options than are provided by consumption plans.<br/>✔ Your code needs to run longer than the maximum execution time allowed on the Consumption plan.<br/>✔ You require virtual network connectivity.<br/>✔ You want to provide a custom Linux image in which to run your functions. |
40
40
|**[Dedicated plan]**|Run your functions within an App Service plan at regular [App Service plan rates](https://azure.microsoft.com/pricing/details/app-service/windows/).<br/><br/>Best for long-running scenarios where [Durable Functions](durable/durable-functions-overview.md) can't be used. Consider an App Service plan in the following situations:<br/><br/>✔ You have existing and underutilized virtual machines that are already running other App Service instances.<br/>✔ You must have fully predictable billing, or you need to manually scale instances.<br/>✔ You want to run multiple web apps and function apps on the same plan<br/>✔ You need access to larger compute size choices.<br/>✔ Full compute isolation and secure network access provided by an App Service Environment (ASE).<br/>✔ Very high memory usage and high scale (ASE).|
41
41
|**[Container Apps]**| Create and deploy containerized function apps in a fully managed environment hosted by Azure Container Apps.<br/><br/>Use the Azure Functions programming model to build event-driven, serverless, cloud native function apps. Run your functions alongside other microservices, APIs, websites, and workflows as container-hosted programs. Consider hosting your functions on Container Apps in the following situations:<br/><br/>✔ You want to package custom libraries with your function code to support line-of-business apps.<br/>✔ You need to migrate code execution from on-premises or legacy apps to cloud native microservices running in containers.<br/>✔ When you want to avoid the overhead and complexity of managing Kubernetes clusters and dedicated compute.<br/>✔ Your functions need high-end processing power provided by dedicated GPU compute resources. |
@@ -67,7 +67,7 @@ For details on current native language stack support in Functions, see [Supporte
67
67
## Scale
68
68
69
69
The following table compares the scaling behaviors of the various hosting plans.
70
-
Maximum instances are given on a per-function app (Consumption) or per-plan (Flex/Premium/Dedicated) basis, unless otherwise indicated.
70
+
Maximum instances are given on a per-function app (Consumption) or per-plan (Premium/Dedicated) basis, unless otherwise indicated.
71
71
72
72
| Plan | Scale out | Max # instances |
73
73
| --- | --- | --- |
@@ -81,12 +81,12 @@ Maximum instances are given on a per-function app (Consumption) or per-plan (Fle
81
81
2. In some regions, Linux apps on a Premium plan can scale to 100 instances. For more information, see the [Premium plan article](functions-premium-plan.md#region-max-scale-out). <br/>
82
82
3. For specific limits for the various App Service plan options, see the [App Service plan limits](../azure-resource-manager/management/azure-subscription-service-limits.md#azure-app-service-limits).
83
83
4. On Container Apps, the default is 10 instances, but you can set the [maximum number of replicas](../container-apps/scale-app.md#scale-definition), which has an overall maximum of 1000. This setting is honored as long as there's enough cores quota available. When you create your function app from the Azure portal you're limited to 300 instances.
84
-
5. Total instances in a given region are imited by [regional subscription memory quotas](./flex-consumption-plan.md#regional-subscription-memory-quotas).
84
+
5. Total instances in a given region are effectively limited by [regional subscription memory quotas](./flex-consumption-plan.md#regional-subscription-memory-quotas).
85
85
86
86
## Cold start behavior
87
87
88
88
| Plan | Details |
89
-
| -- | -- |
89
+
| ----|---- |
90
90
|**[Flex Consumption plan]**| Supports [always ready instances](./flex-consumption-plan.md#always-ready-instances) to reduce the delay when provisioning new instances. |
91
91
|**[Premium plan]**| Supports [always ready instances](./functions-premium-plan.md#always-ready-instances) to avoid cold starts by letting you maintain one or more _perpetually warm_ instances. |
92
92
|**[Dedicated plan]**| When running in a Dedicated plan, the Functions host can run continuously on a prescribed number of instances, which means that cold start isn't really an issue. |
@@ -118,16 +118,16 @@ For a direct cost comparison between dynamic hosting plans (Consumption, Flex Co
118
118
119
119
In some cases, when trying to create a new hosting plan for your function app in an existing resource group you might receive one of the following errors:
120
120
121
-
* The pricing tier is not allowed in this resource group
122
-
* <SKU_name> workers are not available in resource group <resource_group_name>
121
+
* The pricing tier isn't allowed in this resource group
122
+
* <SKU_name> workers aren't available in resource group <resource_group_name>
123
123
124
124
This can happen when the following conditions are met:
125
125
126
126
* You create a function app in an existing resource group that has ever contained another function app or web app. For example, Linux Consumption apps aren't supported in the same resource group as Linux Dedicated or Linux Premium plans.
127
127
* Your new function app is created in the same region as the previous app.
128
128
* The previous app is in some way incompatible with your new app. This error can happen between SKUs, operating systems, or due to other platform-level features, such as availability zone support.
129
129
130
-
The reason this happens is due to how function app and web app plans are mapped to different pools of resources when being created. Different SKUs require a different set of infrastructure capabilities. When you create an app in a resource group, that resource group is mapped and assigned to a specific pool of resources. If you try to create another plan in that resource group and the mapped pool does not have the required resources, this error occurs.
130
+
The reason this happens is due to how function app and web app plans are mapped to different pools of resources when being created. Different SKUs require a different set of infrastructure capabilities. When you create an app in a resource group, that resource group is mapped and assigned to a specific pool of resources. If you try to create another plan in that resource group and the mapped pool doesn't have the required resources, this error occurs.
131
131
132
132
When this error occurs, instead create your function app and hosting plan in a new resource group.
| Max memory (GB per instance) | 4<sup>14</sup> | 3.5-14 | 1.75-256/8-256 |[varies](/azure/container-apps/billing)|1.5 |
20
-
| Max instance count (Windows \| Linux) | n/a \| 1000 | varies by SKU \| 100<sup>11</sup> | 10-300<sup>18</sup> | 200 \| 100 | 1000 <sup>15</sup>|
20
+
| Max instance count (Windows \| Linux) | n/a \| 1000<sup>15</sup>| varies by S KU \| 100<sup>11</sup> | 10-300<sup>18</sup> | 200 \| 100 | 1000 |
21
21
| Function apps per plan<sup>13</sup> | 100 | 100 | unbounded<sup>4</sup> | unbounded<sup>4</sup> |100 |
22
22
|[App Service plans](/azure/app-service/overview-hosting-plans)| n/a | 100 per resource group |100 per resource group | n/a | 100 per [region](https://azure.microsoft.com/global-infrastructure/regions/)|
23
23
|[Deployment slots](/azure/azure-functions/functions-deployment-slots) per app<sup>12</sup> | n/a | 3 | 1-20<sup>11</sup> | not supported |2 |
0 commit comments