FaaS (Function as a Service)

핵심 인사이트 (3줄 요약)

서버 없이 함수만 배포하여 실행하는 클라우드 모델. 이벤트 기반으로 자동 스케일링. 사용한 실행 시간만큼만 과금.


📝 기술사 모의답안 (2.5페이지 분량)

📌 예상 문제

"FaaS (Function as a Service)의 개념과 핵심 원리를 설명하고, 비교 분석 및 실무 적용 방안을 기술하시오."


Ⅰ. 개요

1. 개념

FaaS(Function as a Service)는 개발자가 서버 관리 없이 함수 코드만 업로드하면, 클라우드 플랫폼이 자동으로 실행 환경을 제공하고 이벤트에 따라 함수를 실행하는 서버리스 컴퓨팅 모델이다.

비유: "함수만 던지면 알아서 실행되는 자판기" - 버튼(이벤트) 누르면 결과가 나와요


Ⅱ. 구성 요소 및 핵심 원리

2. 서버리스 아키텍처

┌────────────────────────────────────────────────────────┐
│           서버리스 vs 전통 아키텍처                    │
├────────────────────────────────────────────────────────┤
│                                                        │
│  전통 방식:                                            │
│  ┌────────────────────────────────────────────────┐   │
│  │                                                │   │
│  │  ┌─────────────────────────────────────────┐  │   │
│  │  │           서버 (항상 실행)              │  │   │
│  │  │  ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐      │  │   │
│  │  │  │함수1│ │함수2│ │함수3│ │함수4│      │  │   │
│  │  │  └─────┘ └─────┘ └─────┘ └─────┘      │  │   │
│  │  │                                         │  │   │
│  │  │  💰 24시간 과금, 서버 관리 필요         │  │   │
│  │  └─────────────────────────────────────────┘  │   │
│  │                                                │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
│  FaaS (서버리스):                                     │
│  ┌────────────────────────────────────────────────┐   │
│  │                                                │   │
│  │  이벤트 발생 시에만 실행                       │   │
│  │                                                │   │
│  │  📧 HTTP 요청 ──→ ┌─────────┐                 │   │
│  │                   │ 함수 A   │ ──→ 응답       │   │
│  │                   └─────────┘                 │   │
│  │                                                │   │
│  │  📁 파일 업로드 ─→ ┌─────────┐                │   │
│  │                   │ 함수 B   │ ──→ 처리       │   │
│  │                   └─────────┘                 │   │
│  │                                                │   │
│  │  ⏰ 예약 시간 ───→ ┌─────────┐                │   │
│  │                   │ 함수 C   │ ──→ 배치       │   │
│  │                   └─────────┘                 │   │
│  │                                                │   │
│  │  💰 실행 시간만 과금, 서버 관리 불필요        │   │
│  │                                                │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
└────────────────────────────────────────────────────────┘

3. FaaS 특징

특징설명
상태 비저장함수 실행 간 데이터 유지 안 됨
이벤트 기반HTTP, DB 변경, 파일 업로드 등이 트리거
자동 스케일링트래픽에 따라 자동으로 인스턴스 증감
실행 시간 제한보통 15분 이내 (플랫폼별 상이)
콜드 스타트대기 상태에서 첫 실행 시 지연 발생

4. 주요 FaaS 플랫폼

┌────────────────────────────────────────────────────────┐
│           FaaS 플랫폼 비교                             │
├────────────────────────────────────────────────────────┤
│                                                        │
│  ┌────────────────────────────────────────────────┐   │
│  │  AWS Lambda                                    │   │
│  │  • 최대 실행 시간: 15분                        │   │
│  │  • 지원 언어: Node, Python, Java, Go, C# 등   │   │
│  │  • 트리거: API Gateway, S3, DynamoDB, SNS 등  │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
│  ┌────────────────────────────────────────────────┐   │
│  │  Azure Functions                               │   │
│  │  • 최대 실행 시간: 10분 (기본)                 │   │
│  │  • 지원 언어: C#, Java, JavaScript, Python 등  │   │
│  │  • 트리거: HTTP, Timer, Queue, Event Hub 등   │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
│  ┌────────────────────────────────────────────────┐   │
│  │  Google Cloud Functions                        │   │
│  │  • 최대 실행 시간: 9분 (HTTP), 60분(이벤트)   │   │
│  │  • 지원 언어: Node, Python, Go, Java, .NET    │   │
│  │  • 트리거: HTTP, Cloud Storage, Pub/Sub 등    │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
│  ┌────────────────────────────────────────────────┐   │
│  │  Cloudflare Workers                            │   │
│  │  • 엣지에서 실행 (전 세계 데이터센터)          │   │
│  │  • 최대 실행 시간: 50ms (무료), 30초 (유료)   │   │
│  │  • V8 엔진 기반, 콜드 스타트 없음             │   │
│  └────────────────────────────────────────────────┘   │
│                                                        │
└────────────────────────────────────────────────────────┘

Ⅲ. 기술 비교 분석

6. 장단점

장점단점
서버 관리 불필요콜드 스타트 지연
사용량 기반 과금실행 시간 제한
자동 스케일링상태 관리 복잡
빠른 배포디버깅 어려움
높은 가용성벤더 락인 위험

Ⅳ. 실무 적용 방안

5. FaaS 활용 사례

사례설명
API 백엔드HTTP 요청 처리
이미지 처리업로드 시 썸네일 생성
데이터 처리ETL 파이프라인
챗봇메시지 수신 시 응답
예약 작업정기적인 배치 처리
IoT센서 데이터 처리

Ⅴ. 기대 효과 및 결론

효과 영역내용정량적 목표
비즈니스 혁신디지털 전환 가속화 및 신규 비즈니스 모델 창출시장 출시 시간(TTM) 50% 단축
운영 효율AI·자동화로 수작업 제거 및 의사결정 지원 강화운영 비용 30~40% 절감
경쟁력 강화최신 기술 도입으로 시장 경쟁 우위 확보고객 만족도(CSAT) 20점 향상

결론

**FaaS (Function as a Service)**은(는) ICT 융합 기술은 AI-First 전략, 탄소 중립(Net Zero) 목표, EU AI Act 등 글로벌 규제 환경에 대응하면서 기술적 혁신과 사회적 책임을 동시에 실현하는 방향으로 발전하고 있다.

※ 참고 표준: NIST AI RMF 1.0, EU AI Act(2024), ISO/IEC 42001(AI 관리 시스템), 과기정통부 AI 기본법


어린이를 위한 종합 설명

FaaS를 쉽게 이해해보자!

서버 없이 함수만 배포하여 실행하는 클라우드 모델. 이벤트 기반으로 자동 스케일링. 사용한 실행 시간만큼만 과금.

왜 필요할까?
  기존 방식의 한계를 넘기 위해

어떻게 동작하나?
  복잡한 문제 → FaaS 적용 → 더 빠르고 안전한 결과!

핵심 한 줄:
  FaaS = 똑똑하게 문제를 해결하는 방법

비유: FaaS은 마치 요리사가 레시피를 따르는 것과 같아. 혼란스러운 재료들을 정해진 순서대로 조합하면 → 맛있는 요리(최적 결과)가 나오지! 🍳