Azure App Service: Scaling App Service Applications
Applications hosted in Azure App Service can achieve massive scale. However, scaling an application is a complex problem that does not have a “one size fits all” solution. To correctly scale your application there are 3 key areas that will contribute to your applications success:
- Understanding your application architecture and its weaknesses.
- Is your Application Stateful? Stateless?
- What are all the components of your application?
- Where are the bottlenecks in the application?
- When load is applied to your app, what will break first?
- Understanding the expected load and performance requirements.
- Does the application need to serve one thousand users? or one million?
- Will traffic come from a single geographic location or globally?
- Are there seasonal variations? traffic peaks?
- How fast should the app respond? 1 second? 1 millisecond?
- Understanding and correctly leverage the platform hosting your app.
- What features should I leverage to achieve my scale goals?
This section will help you understand all the factors and help you devise a strategy that takes advantage of the necessary App Service features to achieve your scalability goals.
- Scale Azure App Service
- Understanding Redundancy and Reliability
- StateFULL vs StateLESS applications
- Configuring your Stateless app
- Load Testing apps in App Service
- App Service scaling best practices
- Port exhaustion and connection pooling
- Leveraging Azure Storage from your App Service app
- Leveraging Azure CDN from your App Service app
- Leveraging Azure Redis Cache from your App Service app
- Geo distribution
- Leveraging Traffic Manager to achive global scale
This article shows you how to scale your app in Azure App Service. There are two workflows for scaling, scale up and scale out, and this article explains the scale up workflow.
- Scale up: Get more CPU, memory, disk space, and extra features like dedicated virtual machines (VMs), custom domains and certificates, staging slots, autoscaling, and more. You scale up by changing the pricing tier of the App Service plan that your app belongs to.
- In your browser, open the Azure portal.
- In your app’s blade, click All settings, and then click Scale Up.
- Choose your tier, and then click Select.
The Notifications tab will flash a green SUCCESS after the operation is complete.
- Scale out: Increase the number of VM instances that run your app. You can scale out to as many as 20 instances, depending on your pricing tier. App Service Environments in Premium tier will further increase your scale-out count to 50 instances. For more information about scaling out, see Scale instance count manually or automatically. There you will find out how to use autoscaling, which is to scale instance count automatically based on predefined rules and schedules.