Microsoft AZ-204: Azure Functions 및 Serverless 컴퓨팅 — 학습 가이드

다음의 일부입니다: Microsoft Azure Developer Associate AZ-204 — 학습 가이드. 검증된 답안으로 연습하기: Microsoft 시험 허브, 또는 다음에서 시간 제한 모의고사 풀기: ExamRoll.io.

개요

Azure Functions는 이벤트 기반의 단기 실행 워크로드에 최적화된 서버리스 컴퓨팅 서비스입니다. 인프라를 추상화하여 개발자는 HTTP 엔드포인트, 큐, Blob, 데이터 변경 피드, 스트리밍 서비스의 이벤트에 응답하는 코드에만 집중할 수 있습니다. 스케일링, 가격 책정, 콜드 스타트(cold-start) 동작을 결정하는 호스팅 계획을 선택하고, 선언적 바인딩을 사용하여 코드를 트리거 및 데이터 소스에 바인딩하며, 선택적으로 Durable Functions를 사용하여 장기 실행되는 안정적인 워크플로를 구성할 수 있습니다. 견고한 구성, 반복 가능한 배포, Application Insights를 통한 심층적인 관찰 가능성은 프로덕션 수준의 시스템을 위한 플랫폼을 완성합니다.

호스팅 계획, 스케일링, 콜드 스타트

호스팅 계획 선택은 실행 특성과 비용을 결정합니다.

비용에 최적화된 산발적인 워크로드에는 소비 계획을, 낮은 지연 시간과 VNET이 필요한 경우에는 프리미엄 계획을, 기존 App Service 용량과 통합하거나 완전한 제어가 필요할 때는 전용 계획을 선택하십시오. 초저지연 시간이 필요하다면, 미리 준비된 인스턴스가 있는 프리미엄 계획이나 Always On이 설정된 전용 계획이 콜드 스타트를 줄여줍니다. 종속성을 줄이고, 패키지에서 실행(run-from-package)하며, 클라이언트를 지연 초기화(lazily initializing)하여 콜드 스타트 영향을 더욱 최소화할 수 있습니다.

트리거와 바인딩

함수는 트리거에 의해 활성화되고 바인딩을 통해 데이터와 상호 작용합니다. 트리거는 함수가 어떻게 그리고 언제 실행될지를 정의합니다. 바인딩은 명령형 SDK 코드 없이 선언적으로 외부 서비스에 연결하여 입/출력을 처리합니다.

일반적인 트리거:

바인딩:

멱등성, 역압(backpressure), 장애 격리를 위해 트리거와 바인딩을 설계해야 합니다. 최소 한 번 이상 전달(at-least-once delivery)을 보장하는 소스(큐, Event Hubs, Service Bus)의 경우, 함수를 멱등성을 가지며 재시도에 탄력적으로 작성해야 합니다.

Durable Functions: 신뢰할 수 있는 오케스트레이션 패턴

Durable Functions는 내구성 있는 작업 프레임워크(durable task framework)를 사용하여 장기 실행 워크플로우를 위한 상태 저장(stateful) 및 신뢰할 수 있는 오케스트레이션을 제공함으로써 Azure Functions를 확장합니다.

함수 유형:

패턴:

Durable Functions는 액티비티의 최소 한 번 이상 실행(at-least-once execution)과 오케스트레이터 상태의 정확히 한 번 진행(exactly-once progression)을 보장합니다. 상태를 스토리지(기본값은 Azure Storage)에 영속화하므로, 스토리지 계정이 처리량 및 안정성 요구 사항을 충족하는지 확인해야 합니다. 일시적인 장애에 대해서는 사용자 지정 재시도 정책을 사용하고, 외부 상호작용을 위해서는 이벤트를 발생시킵니다. 매우 긴 프로세스의 경우, 내장된 내구성을 통해 Durable 오케스트레이션은 수일에서 수개월 동안 실행될 수 있습니다.

구성, 배포 및 관찰성

함수 앱 구성은 계층적 구조를 가지며, 환경을 인식합니다.

배포 옵션:

undefined

또는 zipdeploy API를 사용합니다. 콘텐츠 디렉터리에 파일을 씁니다.

undefined

를 패키지 URL(또는 최신 버전을 위해 1)로 설정합니다. 런타임이 패키지를 읽기 전용으로 마운트하여 콜드 스타트를 개선하고 배포 중 파일 잠금 문제를 제거합니다. 재현 가능한 롤백을 위해 SAS URL과 함께 Blob Storage에 패키지를 저장하세요.

Application Insights를 사용한 모니터링:

배포 자동화(GitHub Actions/Azure Pipelines), HTTP 엔드포인트용 상태 프로브, 자동 스케일링을 고려한 튜닝을 통해 함수를 운영하세요. 패키지를 가볍게 유지하고, 클라이언트(예: HttpClient, Service Bus 클라이언트)를 정적 싱글톤으로 캐시하며, 런타임 실패를 방지하기 위해 바인딩 연결 설정이 시작 시에 확인되는지 검증하세요.

실제 문제 시나리오

Contoso Retail은 고객이 장바구니에 상품을 추가할 때 실시간으로 할인을 적용하는 프로모션 서비스를 출시합니다. 백엔드는 변동성이 큰 트래픽에 낮은 지연 시간으로 응답하고, 서드파티 가격 책정 API를 호출하며, Cosmos DB 장바구니 문서를 업데이트해야 합니다. 운영팀은 무중단 배포와 실패에 대한 깊은 가시성을 원합니다.

  1. 호스팅 계획 선택 및 앱 구조화
  1. 안정성 및 병렬 처리를 위한 Durable 오케스트레이션 구현
  1. 단순성을 위한 트리거 및 바인딩 구성
  1. 구성 및 배포 최적화

undefined

로 배포하고, 스테이징 슬롯을 통해 프로덕션으로 교환하여 무중단 릴리스를 수행합니다. 환경 간 유출을 방지하기 위해 연결 문자열과 API 엔드포인트를 슬롯 설정으로 표시합니다.

  1. 모니터링 및 운영

이러한 선택을 한 이유:


Azure App Service 및 Web Apps · 모든 도메인 · Azure Storage 및 Blob Storage

이 문제 연습하기 → · ExamRoll.io에서 시간 제한 연습 →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

시험 합격하기 →

Microsoft 찾아보기 →

Related guides

올인원 액세스

하나의 구독. 모든 시험.

모든 플랜은 무제한 답변 검색, 모의고사, AI 해설, 전체 자료 라이브러리를 20개 이상의 언어로 잠금 해제합니다.

월간
24.87
Just €0.83/day
모든 포함:
  • 무제한 답변 검색
  • 무제한 모의고사
  • AI 기반 해설
  • 전체 자료 라이브러리
  • 20개 이상의 언어
  • 주간 콘텐츠 업데이트
  • 보상 및 추천
  • 우선 지원
무료 체험 시작

신용카드 필요 없음*

최고의 가치
12개월
179.87
Just €0.49/daySave 40%
모든 포함:
  • 무제한 답변 검색
  • 무제한 모의고사
  • AI 기반 해설
  • 전체 자료 라이브러리
  • 20개 이상의 언어
  • 주간 콘텐츠 업데이트
  • 보상 및 추천
  • 우선 지원
무료 체험 시작

신용카드 필요 없음*

✓ 무료 플랜 포함 · ✓ 언제든지 취소 가능 · ✓ 모든 플랜은 전체 제품을 잠금 해제합니다