1. Azure App Service Fundamentals
Q1. What is Azure App Service?
Answer: Azure App Service is a fully managed Platform as a Service (PaaS) used to host web applications, REST APIs, and backend services without managing underlying servers.
Key Points: PaaS, managed hosting, automatic platform maintenance.
Q2. Why do we use Azure App Service?
Answer: It simplifies application hosting, deployment, scaling, security configuration, and monitoring.
Key Points: Less infrastructure maintenance, CI/CD integration, high availability.
Q3. Is Azure App Service IaaS or PaaS?
Answer: Azure App Service is PaaS. Microsoft manages the underlying infrastructure, while developers manage application code, configuration, and data.
Key Points: PaaS, shared responsibility.
Q4. What is the difference between Azure App Service and Azure VM?
|
Azure App Service |
Azure VM |
|---|---|
|
PaaS |
IaaS |
|
Azure manages OS |
Customer manages OS |
|
Built-in scaling options |
Scaling configured separately |
|
Limited OS access |
Full OS control |
|
Best for web apps and APIs |
Best for custom server workloads |
Q5. Which programming languages does Azure App Service support?
Answer: It supports .NET, Node.js, Java, Python, PHP, and custom containers, depending on the hosting configuration.
Key Points: Multiple runtimes, Windows/Linux hosting.
Q6. What is the difference between Windows and Linux App Service?
Answer: Windows App Service supports Windows-based hosting and IIS integration. Linux App Service supports Linux runtime stacks and containers.
Key Points: ASP.NET Core supports both; classic ASP.NET Framework generally requires Windows.
2. App Service Plan and Pricing
Q7. What is an App Service Plan?
Answer: An App Service Plan defines the compute resources, pricing tier, worker instances, and scaling capabilities available to hosted applications.
Key Points: CPU, RAM, pricing, scaling.
Q8. What is the difference between App Service and App Service Plan?
Answer: App Service hosts the actual application, while the App Service Plan provides the underlying compute capacity.
Key Points: Web App = Application; Plan = Compute resources.
Q9. Can multiple applications share one App Service Plan?
Answer: Yes. Multiple compatible web apps can share the same plan and its CPU and memory resources.
Key Points: Cost optimization, shared resources, noisy-neighbor risk.
Q10. What are the important App Service pricing tiers?
|
Tier |
Important feature |
|---|---|
|
Free (F1) |
Learning and testing |
|
Basic (B1–B3) |
Dedicated compute |
|
Standard (S1–S3) |
Autoscaling and deployment slots |
|
Premium |
Higher performance and scaling |
|
Isolated |
Dedicated App Service Environment |
Q11. Which App Service tier supports deployment slots?
Answer: Standard and higher eligible tiers support deployment slots. Basic and Free tiers do not.
Key Points: Standard, Premium, staging, production.
Q12. How does App Service billing work?
Answer: Dedicated compute is billed primarily at the App Service Plan level, based on the selected tier and instance count.
Key Points: Multiple apps can share one plan; additional services may cost extra.
Q13. Does stopping an App Service stop billing?
Answer: No. Stopping a web app generally does not stop compute charges for its paid dedicated App Service Plan.
Key Points: Plan-level billing, resource cleanup.
3. Application Deployment and CI/CD
Q14. What are the different deployment methods in Azure App Service?
Answer: ZIP Deploy, Azure DevOps Pipelines, GitHub Actions, Local Git, FTPS, and container deployment.
Key Points: Manual deployment, automated deployment, CI/CD.
Q15. What is ZIP Deploy?
Answer: ZIP Deploy publishes an application package to Azure App Service using Azure CLI, deployment APIs, or supported deployment tools.
Key Points: ZIP package, published files, deployment automation.
Q16. How do you deploy an ASP.NET Core Web API to App Service?
Answer: Build and publish the application, create an Azure Web App with a compatible runtime, deploy the published files, and verify the API endpoints.
dotnet restore
dotnet build -c Release
dotnet publish -c Release -o ./publish
Q17. What is CI/CD in Azure App Service?
Answer: Continuous Integration automatically builds and tests code. Continuous Deployment or Delivery automates or prepares releases to Azure App Service.
Key Points: Azure Pipelines, GitHub Actions, automated releases.
Q18. How do you deploy an application using Azure DevOps?
Answer: Create a pipeline to restore, build, test, and publish the application, then deploy the artifact using an Azure service connection.
Key Points: YAML pipeline, deployment task, service connection.
Q19. What is Kudu in Azure App Service?
Answer: Kudu is an App Service deployment and diagnostic environment used for inspecting deployment information, files, logs, and troubleshooting.
Key Points: Advanced Tools, deployment diagnostics, console access where supported.
4. Application Settings and Configuration
Q20. What are Application Settings in Azure App Service?
Answer: Application Settings store environment-specific configuration values, such as API URLs, feature flags, and application options.
Key Points: Environment variables, configuration management.
Q21. How do you access App Service settings in ASP.NET Core?
Answer: App Service settings are exposed as environment variables and can be accessed through IConfiguration.
var apiUrl = builder.Configuration["ApiUrl"];
Q22. How do you configure a connection string in App Service?
Answer: Configure it in the Azure Portal using environment variables or connection string settings instead of hardcoding it.
var connection = builder.Configuration
.GetConnectionString("DefaultConnection");
Key Points: Secure configuration, environment variables, Key Vault.
Q23. What is the purpose of ASPNETCORE_ENVIRONMENT?
Answer: It specifies the ASP.NET Core hosting environment, such as Development, Staging, or Production.
Key Points: Environment-specific settings and middleware.
Q24. What is Always On in Azure App Service?
Answer: Always On keeps the application loaded by sending periodic requests, reducing idle unloading and cold starts.
Key Points: Available on supported paid tiers, useful for production applications.
5. Deployment Slots and Rollback
Q25. What is a Deployment Slot?
Answer: A Deployment Slot is a separate live environment, such as Staging, used to deploy and test new application versions before production.
Key Points: Staging, production, release validation.
Q26. What is Slot Swapping?
Answer: Slot swapping exchanges application versions between slots, allowing a validated staging release to become the production release.
Key Points: Reduced downtime, application warm-up, release management.
Q27. What is a Sticky Slot Setting?
Answer: A sticky setting remains associated with its deployment slot during swapping.
Key Points: Environment-specific connection strings, API settings, secrets.
Q28. How do you roll back a failed deployment?
Answer: If the previous version remains in the staging slot, swap it back with production. Alternatively, redeploy a known-good artifact.
Key Points: Reverse swap, rollback, database compatibility.
Q29. How do you achieve zero-downtime deployment?
Answer: Deploy to staging, warm up the application, run health checks, and swap staging with production.
Key Points: Deployment slots, health checks, minimal interruption.
6. Scaling and High Availability
Q30. What is Scaling in Azure App Service?
Answer: Scaling adjusts application compute resources based on workload requirements.
Key Points: Vertical scaling, horizontal scaling, autoscaling.
Q31. What is Scale Up and Scale Down?
Answer: Scale Up increases CPU and memory by selecting a larger App Service Plan size. Scale Down selects a smaller size.
Key Points: Vertical scaling, instance size.
Q32. What is Scale Out and Scale In?
Answer: Scale Out increases the number of application instances. Scale In decreases the number of instances.
Key Points: Horizontal scaling, instance count.
Q33. What is the difference between Vertical and Horizontal Scaling?
|
Vertical Scaling |
Horizontal Scaling |
|---|---|
|
Scale Up/Down |
Scale Out/In |
|
Changes instance size |
Changes instance count |
|
More CPU/RAM per instance |
More worker instances |
|
Useful for resource-intensive workloads |
Useful for increased traffic |
Q34. What is Autoscaling?
Answer: Autoscaling automatically increases or decreases instance count based on configured rules or supported automatic scaling capabilities.
Key Points: CPU utilization, thresholds, instance limits.
Q35. How do you configure CPU-based Autoscaling?
Answer: Create scaling rules in Azure Monitor, such as increasing instances when CPU usage exceeds 70% for five minutes.
Key Points: Scale-out rule, scale-in rule, cooldown period.
Q36. What happens when an App Service scales out?
Answer: Azure runs additional worker instances and distributes incoming requests across them.
Key Points: Load distribution, stateless applications, shared external state.
7. Security, Managed Identity and Key Vault
Q37. What is Managed Identity in Azure App Service?
Answer: Managed Identity allows applications to authenticate to supported Azure services without storing credentials in application code.
Key Points: Microsoft Entra ID, passwordless authentication.
Q38. What are the types of Managed Identity?
Answer: System-assigned identity belongs to a specific Azure resource. User-assigned identity is a separate resource that multiple applications can share.
Key Points: System-assigned, user-assigned.
Q39. What is Azure Key Vault?
Answer: Azure Key Vault securely stores and manages secrets, encryption keys, and certificates.
Key Points: Centralized secret management, access control.
Q40. How does App Service access Azure Key Vault?
Answer: Enable Managed Identity, grant it permission to read the required secrets, and configure Key Vault references or use the Azure SDK.
Key Points: Managed Identity, RBAC, Key Vault references.
Q41. How do you secure Azure App Service?
Answer: Enable HTTPS, configure authentication and authorization, use Managed Identity, restrict network access, and monitor security events.
Key Points: TLS, identity, least privilege, private networking.
8. Networking and Azure SQL Database
Q42. What is VNet Integration?
Answer: VNet Integration allows App Service to make outbound connections to resources accessible through an Azure Virtual Network.
Key Points: Outbound connectivity, private resources.
Q43. What is a Private Endpoint?
Answer: A Private Endpoint provides private IP-based connectivity to supported Azure services using Azure Private Link.
Key Points: Private inbound access, network isolation.
Q44. What is the difference between VNet Integration and Private Endpoint?
|
VNet Integration |
Private Endpoint |
|---|---|
|
Outbound connectivity |
Private inbound connectivity |
|
App accesses private resources |
Clients access service privately |
|
Does not make App Service private |
Provides private IP access |
Q45. How does ASP.NET Core App Service connect to Azure SQL?
Answer: Configure the Azure SQL connection through secure application settings or use Microsoft Entra authentication with Managed Identity.
Key Points: EF Core, Azure SQL, secure authentication.
9. Monitoring and Troubleshooting
Q46. What is Application Insights?
Answer: Application Insights is an application performance monitoring service that collects telemetry such as requests, dependencies, exceptions, and response times.
Key Points: APM, distributed tracing, performance monitoring.
Q47. What is Azure Monitor?
Answer: Azure Monitor collects and analyzes metrics, logs, and telemetry to monitor the health and performance of Azure resources.
Key Points: Metrics, logs, alerts, diagnostics.
Q48. What is the difference between Azure Monitor and Application Insights?
Answer: Azure Monitor is the broader monitoring platform. Application Insights focuses on application-level performance and diagnostics.
Key Points: Infrastructure monitoring vs application monitoring.
Q49. What is Log Stream in Azure App Service?
Answer: Log Stream displays supported application and web server logs in near real time for troubleshooting.
Key Points: Application logging, runtime errors, diagnostics.
Q50. How do you troubleshoot an Azure App Service application that returns HTTP 500?
Answer: Check application logs, Application Insights exceptions, deployment logs, configuration settings, and database connectivity.
Key Points: HTTP 500, exceptions, configuration, dependencies.
10. Important Real-Time Scenario Questions
Q51. Your application works locally but fails after deployment. What will you check?
Answer: Verify the runtime version, environment variables, connection strings, deployment logs, startup configuration, and application exceptions.
Key Points: Runtime mismatch, configuration, deployment.
Q52. Your application is slow during peak traffic. What will you do?
Answer: Analyze Application Insights telemetry and CPU/memory metrics, identify bottlenecks, and optimize the application or scale out.
Key Points: Performance monitoring, autoscaling, optimization.
Q53. Your application works in staging but fails after slot swapping. Why?
Answer: Possible causes include incorrect slot settings, production-specific dependencies, database differences, or configuration mismatches.
Key Points: Sticky settings, connection strings, environment validation.
Q54. Your application cannot connect to Azure SQL Database. How will you troubleshoot?
Answer: Verify database credentials or Managed Identity permissions, connection strings, SQL firewall rules, private networking, and DNS resolution.
Key Points: Authentication, firewall, network connectivity.
Q55. Your application needs a secret API key. Where should you store it?
Answer: Store the key in Azure Key Vault and access it through Managed Identity rather than hardcoding it in source code.
Key Points: Secret management, secure configuration.
Q56. You need to deploy an ASP.NET Core API without affecting production users. What will you do?
Answer: Deploy the new version to a staging slot, validate its functionality, and swap it with production after successful testing.
Key Points: Deployment slots, release validation, rollback.
Q57. Multiple applications share one App Service Plan, and one application consumes excessive CPU. What will you do?
Answer: Identify the resource-intensive application, optimize it, or move it to a separate App Service Plan to isolate its workload.
Key Points: Noisy-neighbor problem, resource isolation.
Q58. Your App Service application frequently restarts. How will you investigate?
Answer: Review restart events, memory usage, application exceptions, deployment activity, health checks, and platform diagnostics.
Key Points: Diagnose and Solve Problems, Application Insights, memory.
Q59. How do you host an Angular frontend and ASP.NET Core Web API in Azure?
Answer: Host the Angular frontend in Azure Static Web Apps or a suitable web host, and deploy the ASP.NET Core API to Azure App Service.
Key Points: Frontend hosting, REST API, CORS, HTTPS.
Q60. How would you design a production-ready ASP.NET Core application using Azure App Service?
Answer: Use App Service for hosting, Azure SQL for data, Managed Identity and Key Vault for security, Azure DevOps for CI/CD, and Application Insights for monitoring.
Key Points: Security, scalability, deployment slots, monitoring, high availability.