티스토리 뷰
지난 글에서는 Azure App Service Network Flow에 대해서 살펴보았습니다. 이번글에서는 Worker Instance에 대해서 좀 더 자세히 살펴보도록 하겠습니다. Azure App Service에서 Worker Instance는 가상머신 환경으로 Windows, Linux 운영체제를 지원하며 실제 애플리케이션을 . 이번 글에서는 Worker Instance가 무엇이며, Windows와 Linux Worker Instance의 구조 그리고 Worker내에서 요청이 어떻게 처리되는지 살펴보도록 하겠습니다.
1. Worker Instance란?
Azure App Service에서 Worker Instance는 웹 애플리케이션이 실제로 실행되는 가상머신(VM)을 의미합니다. 각 Worker Instance는 애플리케이션 코드를 배포, 실행, 로깅 할 수 있습니다.
2. Azure App Service Worker Instance 구조
1) Windows 기반 Azure App Service Worker Instance 구조
Windows 기반의 Worker Instance는 Windows Server 운영체제 위에서 실행되며, IIS(Internet Information Services)를 통해 웹 애플리케이션을 호스팅합니다. 웹 애플리케이션은 워커 프로세스(w3wp.exe)에서 실행됩니다.

- Hypervisor: Azure 인프라에서 가상 머신을 관리하는 계층
- Virtual Machine (Worker Instance): 애플리케이션을 실행하는 개별 가상 머신
- Guest OS (Windows Server): Windows 기반 운영체제
- IIS (Internet Information Services): 애플리케이션을 호스팅하는 웹 서버 역할
- Worker Process (w3wp.exe) for Web App: IIS의 워커 프로세스로, 배포된 애플리케이션의 실행을 담당
- Worker Process (w3wp.exe) for Kudu: Kudu(배포 관리 도구) 실행을 위한 별도 프로세스, 배포 및 애플리케이션 관리 기능 수행
2) Linux기반 Azure App Service Worker Instance 구조
Linux 기반의 Azure App Service는 컨테이너 환경을 활용하여 애플리케이션을 실행합니다. 즉, Docker 컨테이너를 통해 애플리케이션을 호스팅하는 방식으로 동작합니다.

- Hypervisor: 가상 머신을 관리하는 계층
- Virtual Machine (Worker Instance): 애플리케이션을 실행하는 개별 가상 머신
- Guest OS (Linux): Linux 기반 운영체제
- Container Engine (Docker): 컨테이너 실행을 위한 엔진
- Docker Container for Web App: 웹 애플리케이션을 실행하는 Docker 컨테이너
- Docker Container for Kudu: Kudu를 실행하는 Docker 컨테이너, 배포 및 애플리케이션 관리 기능 수행
3. 여러 웹 애플리케이션 호스팅 시나리오
Azure App Service에서는 하나의 App Service Plan에서 여러 개의 웹 애플리케이션을 호스팅할 수 있으며, 각 애플리케이션은 개별적으로 실행됩니다. Windows와 Linux 환경에서의 차이를 살펴보겠습니다.
1) Windows 환경에서의 여러 애플리케이션 호스팅
하나의 App Service Plan에서 여러개의 웹 애플리케이션은 하나의 Worker Instance에서 독립적인 Worker Process(w3wp.exe)로 실행됩니다. Kudu(SCM) 서비스 애플리케이션마다 존재합니다.
예를 들어 app-1, app-2를 하나의 App Service Plan에 배포한 경우, 하나의 Worker Instance에는 2개의 웹 애플리케이션 Worker Process와 2개의 Kudu Worker Process가 존재합니다.

2) Linux 환경에서의 여러 애플리케이션 호스팅
하나의 App Service Plan에서 여러개의 웹 애플리케이션은 하나의 Worker Instance에서 독립적인 Docker 컨테이너에서 실행됩니다. Kudu(SCM) 서비스 애플리케이션마다 존재합니다.
예를 들어 app-3, app-4를 하나의 App Service Plan에 배포한 경우, 하나의 Worker Instance에 2개의 웹 애플리케이션 Docker 컨테이너와 2개의 Kudu Docker Container가 존재합니다.

4. Windows vs. Linux 환경 비교
Azure App Service에서는 Windows 기반과 Linux 기반의 Worker Instance를 사용할 수 있습니다. 각 환경에서 애플리케이션 실행 방식, 요청 처리 구조 등이 다릅니다.
| 구분 | Windows Worker | Linux Worker |
| 실행 환경 | Windows Server + IIS | Linux + Docker |
| 웹 서버 | IIS (Internet Information Services) | Nginx 또는 Apache |
| 앱 실행 방식 | w3wp.exe (IIS Worker Process)에서 실행 | Docker 컨테이너 내부에서 실행 |
| 요청 처리 방식 | http.sys → IIS → w3wp.exe → Web App | Nginx/Apache → Docker Container → Web App |
| 배포 방식 | Web Deploy, FTP, Git, Zip | Docker 이미지, Zip, Git, FTP |
| Kudu 지원 여부 | 완전 지원 (파일 탐색기, CMD, Process Explorer) | 일부 지원 (파일 탐색기만 가능, SSH 기반 관리) |
결론
Azure App Service의 Worker Instance는 Windows와 Linux 환경에 따라 서로 다른 방식으로 애플리케이션을 실행합니다.
- Windows 환경에서는 IIS를 통해 애플리케이션을 실행하며, 워커 프로세스(w3wp.exe)가 애플리케이션과 Kudu를 각각 실행합니다.
- Linux 환경에서는 Docker 기반으로 애플리케이션을 실행하며, 웹 애플리케이션과 Kudu가 각각의 컨테이너에서 구동됩니다.
컨테이너화된 환경이 필요하거나 리눅스 애플리케이션을 실행해야 한다면 Linux 기반의 Azure App Service를 고려하는 것이 적절하며, 기존 Windows 애플리케이션을 호스팅하려면 Windows 기반 App Service를 선택하는 것이 좋습니다.
참고자료
https://learn.microsoft.com/en-us/azure/app-service/overview
Overview of Azure App Service - Azure App Service
Learn how Azure App Service helps you develop and host web applications.
learn.microsoft.com
'Azure' 카테고리의 다른 글
| Request Lifecycle: 3am에 터진 502를 어디서부터 봐야 할까 (0) | 2026.04.11 |
|---|---|
| Azure App Service란? - 플랫폼 아키텍처 이해하기 (2) | 2026.04.10 |
| Azure App Service 요청 흐름: Inbound와 Outbound의 모든 것 (0) | 2025.02.22 |
| Azure App Service Plan: 웹앱을 실행하는 핵심 인프라 개념 이해하기 (0) | 2025.02.16 |
| Azure App Service Architecture 살펴보기 (0) | 2025.02.15 |
- Total
- Today
- Yesterday
- embeddings
- langchain
- Tutorial
- AppService
- faiss
- 데이터시각화
- cloudcomputing
- openAI
- vector search
- Document Processing
- aks
- Kubernetes
- pandas
- Azure Functions
- Ai
- Python
- streaming
- 공공데이터
- Prompt engineering
- Cloud
- rag
- serverless
- DevOps
- CloudArchitecture
- AZURE
- appserviceplan
- LLM
- ALTAIR
- scaling
- app service
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
