Understand App Service plans, scaling, TLS, custom domains, backups, networking settings, and deployment slots for AZ-104.
This part of AZ-104 is about App Service as an administrative platform, not as an application-development framework. Microsoft expects you to know how plans and apps relate, how scaling and networking settings affect operations, and how slots, TLS, and backups reduce deployment and recovery risk.
The current study guide includes:
Many AZ-104 misses happen because candidates blend the plan and the app together.
| Resource | What it really owns |
|---|---|
| App Service plan | Region, pricing tier, scale boundary, underlying compute for the apps on that plan |
| App Service app | Workload-specific configuration, hostname, TLS posture, deployment behavior, app settings |
If the prompt is really about pricing tier, region, scaling, or shared compute, think plan first. If it is about the website or app behavior, think app first.
| Need | Strongest first fit | Why |
|---|---|---|
| Change scale characteristics for the hosting boundary | App Service plan scaling | Scale belongs to the plan boundary |
| Reduce release risk before production cutover | Deployment slots | Lets you validate before swap |
| Bind a real hostname with HTTPS | Custom domain plus certificate and TLS config | App-level public identity and transport protection |
| Recover site content or configuration on a schedule | App Service backup | Useful recovery feature, but not a full DR design |
| Restrict or control connectivity path | App Service networking settings | Part of operational hardening, not an afterthought |
AZ-104 is testing whether you can keep the platform administration clean:
This example shows the distinction Microsoft likes to test.
1resource plan 'Microsoft.Web/serverfarms@2023-12-01' = {
2 name: 'app-plan'
3 location: resourceGroup().location
4 sku: {
5 name: 'P1v3'
6 capacity: 1
7 }
8 kind: 'linux'
9 properties: {
10 reserved: true
11 }
12}
13
14resource app 'Microsoft.Web/sites@2023-12-01' = {
15 name: 'examdemo-web'
16 location: resourceGroup().location
17 properties: {
18 serverFarmId: plan.id
19 httpsOnly: true
20 }
21}
What to notice:
httpsOnly belongs to the app-level operational posture, not to the abstract idea of “having a website”Slots matter on AZ-104 because they reduce release risk without forcing a full production cutover every time.
flowchart LR
B["New build"] --> S["Staging slot"]
S --> V["Validate config, TLS, and app behavior"]
V --> W["Swap into production"]
The lesson is simple: a slot is not just another app copy. It is a safer deployment path that lets you validate before production traffic takes the new version.
App Service questions often combine platform administration with practical operations:
The next domain is Virtual Networking, where these compute surfaces start interacting with real connectivity, DNS, and security constraints.