서버리스 컴퓨팅 (Serverless Computing)
핵심 인사이트 (3줄 요약)
서버 관리 없이 코드만 실행하는 클라우드 컴퓨팅 모델. FaaS(Function as a Service) 기반. 사용한 만큼만 과금, 자동 스케일링.
📝 기술사 모의답안 (2.5페이지 분량)
📌 예상 문제
"서버리스 컴퓨팅 (Serverless Computing)의 개념과 핵심 원리를 설명하고, 비교 분석 및 실무 적용 방안을 기술하시오."
Ⅰ. 개요
1. 개념
서버리스 컴퓨팅(Serverless Computing)은 개발자가 서버를 프로비저닝하거나 관리할 필요 없이 코드 실행에만 집중할 수 있는 클라우드 실행 모델이다.
비유: "택시 vs 자가용" - 차 유지관리 없이 탈 때만 요금 지불
Ⅱ. 구성 요소 및 핵심 원리
2. 클라우드 진화 단계
┌────────────────────────────────────────────────────────┐
│ 클라우드 컴퓨팅 진화 │
├────────────────────────────────────────────────────────┤
│ │
│ 1단계: 온프레미스 (On-Premises) │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ┌─────────────────────────────────────────┐ │ │
│ │ │ 직접 서버 구매/설치/관리 │ │ │
│ │ │ │ │ │
│ │ │ 💻 서버 + ❄️ 냉각 + 🔌 전력 + 👨 관리 │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ │ │ │
│ │ 관리 부담: 매우 높음 │ 유연성: 낮음 │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ 2단계: IaaS (Infrastructure as a Service) │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ┌─────────────────────────────────────────┐ │ │
│ │ │ 클라우드 VM 대여 │ │ │
│ │ │ │ │ │
│ │ │ EC2, Compute Engine, Azure VM │ │ │
│ │ │ → OS/미들웨어는 직접 관리 │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ │ │ │
│ │ 관리 부담: 높음 │ 유연성: 높음 │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ 3단계: PaaS (Platform as a Service) │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ┌─────────────────────────────────────────┐ │ │
│ │ │ 플랫폼 대여 (앱만 배포) │ │ │
│ │ │ │ │ │
│ │ │ Heroku, Elastic Beanstalk │ │ │
│ │ │ → 코드만 올리면 실행 │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ │ │ │
│ │ 관리 부담: 중간 │ 유연성: 중간 │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ 4단계: Serverless / FaaS │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ┌─────────────────────────────────────────┐ │ │
│ │ │ 함수 단위 실행 │ │ │
│ │ │ │ │ │
│ │ │ Lambda, Cloud Functions, Azure Funcs │ │ │
│ │ │ → 실행 시간만큼만 과금 │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ │ │ │
│ │ 관리 부담: 낮음 │ 유연성: 제약 있음 │ │
│ └────────────────────────────────────────────────┘ │
│ │
└────────────────────────────────────────────────────────┘
3. FaaS 구조
┌────────────────────────────────────────────────────────┐
│ FaaS (Function as a Service) 구조 │
├────────────────────────────────────────────────────────┤
│ │
│ 이벤트 기반 실행: │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ [HTTP 요청] │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │ API 게이트│────→│ Lambda 함수 실행 │ │ │
│ │ │ 웨이 │ │ (실행 시간만 과금) │ │ │
│ │ └──────────┘ └────────┬─────────┘ │ │
│ │ │ │ │
│ │ [S3 업로드] │ │ │
│ │ │ │ │ │
│ │ ▼ ▼ │ │
│ │ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │ S3 버킷 │────→│ 이미지 처리 함수 │ │ │
│ │ │ 이미지 │ │ (리사이징, 변환) │ │ │
│ │ └──────────┘ └──────────────────┘ │ │
│ │ │ │
│ │ [DB 변경] │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │DynamoDB │────→│ 알림 발송 함수 │ │ │
│ │ │ 스트림 │ │ (이메일, SMS) │ │ │
│ │ └──────────┘ └──────────────────┘ │ │
│ │ │ │
│ │ [스케줄] │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌──────────┐ ┌──────────────────┐ │ │
│ │ │CloudWatch│────→│ 배치 처리 함수 │ │ │
│ │ │ Events │ │ (매일 자정 실행) │ │ │
│ │ └──────────┘ └──────────────────┘ │ │
│ │ │ │
│ └────────────────────────────────────────────────┘ │
│ │
└────────────────────────────────────────────────────────┘
5. 주요 서버리스 서비스
┌────────────────────────────────────────────────────────┐
│ 주요 서버리스 서비스 │
├────────────────────────────────────────────────────────┤
│ │
│ AWS: │
│ ┌────────────────────────────────────────────────┐ │
│ │ • Lambda (FaaS) │ │
│ │ • API Gateway (HTTP 트리거) │ │
│ │ • DynamoDB (서버리스 DB) │ │
│ │ • S3 (이벤트 트리거) │ │
│ │ • EventBridge (스케줄러) │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ Google Cloud: │
│ ┌────────────────────────────────────────────────┐ │
│ │ • Cloud Functions (FaaS) │ │
│ │ • Cloud Run (컨테이너 기반 서버리스) │ │
│ │ • Firebase (모바일/웹 백엔드) │ │
│ │ • Firestore (서버리스 DB) │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ Azure: │
│ ┌────────────────────────────────────────────────┐ │
│ │ • Azure Functions (FaaS) │ │
│ │ • Logic Apps (워크플로우) │ │
│ │ • Cosmos DB (서버리스 DB) │ │
│ │ • Event Grid (이벤트 라우팅) │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ 비용 비교 (월 100만 회 실행 기준): │
│ ┌────────────────────────────────────────────────┐ │
│ │ • Lambda: ~$20 │ │
│ │ • Cloud Functions: ~$18 │ │
│ │ • Azure Functions: ~$22 │ │
│ │ (함수 메모리 256MB, 실행시간 100ms 기준) │ │
│ └────────────────────────────────────────────────┘ │
│ │
└────────────────────────────────────────────────────────┘
Ⅲ. 기술 비교 분석
4. 장단점
┌────────────────────────────────────────────────────────┐
│ 서버리스 장단점 │
├────────────────────────────────────────────────────────┤
│ │
│ 장점: │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ✓ 서버 관리 불필요 │ │
│ │ - OS 패치, 업데이트 자동 │ │
│ │ - 인프라 운영 인력 감소 │ │
│ │ │ │
│ │ ✓ 비용 효율 │ │
│ │ - 사용한 만큼만 과금 │ │
│ │ - 유휴 시간 비용 0 │ │
│ │ - 초기 투자 없음 │ │
│ │ │ │
│ │ ✓ 자동 스케일링 │ │
│ │ - 트래픽 증가 시 자동 확장 │ │
│ │ - 트래픽 감소 시 자동 축소 │ │
│ │ │ │
│ │ ✓ 빠른 개발 │ │
│ │ - 코드만 작성하면 배포 완료 │ │
│ │ - 마이크로서비스에 적합 │ │
│ │ │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ 단점: │
│ ┌────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ✗ 콜드 스타트 (Cold Start) │ │
│ │ - 첫 실행 시 지연 발생 │ │
│ │ - 컨테이너 초기화 시간 필요 │ │
│ │ │ │
│ │ ✗ 실행 시간 제한 │ │
│ │ - Lambda: 최대 15분 │ │
│ │ - 장시간 실행 불가 │ │
│ │ │ │
│ │ ✗ 벤더 락인 (Vendor Lock-in) │ │
│ │ - 플랫폼별 API 차이 │ │
│ │ - 이식성 낮음 │ │
│ │ │ │
│ │ ✗ 디버깅/모니터링 어려움 │ │
│ │ - 로컬 테스트 제약 │ │
│ │ - 분산 추적 복잡 │ │
│ │ │ │
│ └────────────────────────────────────────────────┘ │
│ │
└────────────────────────────────────────────────────────┘
Ⅳ. 실무 적용 방안
**서버리스 컴퓨팅 (Serverless Computing)**의 실무 적용 시나리오와 고려사항.
Ⅴ. 기대 효과 및 결론
| 효과 영역 | 내용 | 정량적 목표 |
|---|---|---|
| 비즈니스 혁신 | 디지털 전환 가속화 및 신규 비즈니스 모델 창출 | 시장 출시 시간(TTM) 50% 단축 |
| 운영 효율 | AI·자동화로 수작업 제거 및 의사결정 지원 강화 | 운영 비용 30~40% 절감 |
| 경쟁력 강화 | 최신 기술 도입으로 시장 경쟁 우위 확보 | 고객 만족도(CSAT) 20점 향상 |
결론
**서버리스 컴퓨팅 (Serverless Computing)**은(는) ICT 융합 기술은 AI-First 전략, 탄소 중립(Net Zero) 목표, EU AI Act 등 글로벌 규제 환경에 대응하면서 기술적 혁신과 사회적 책임을 동시에 실현하는 방향으로 발전하고 있다.
※ 참고 표준: NIST AI RMF 1.0, EU AI Act(2024), ISO/IEC 42001(AI 관리 시스템), 과기정통부 AI 기본법
어린이를 위한 종합 설명
서버리스 컴퓨팅를 쉽게 이해해보자!
서버 관리 없이 코드만 실행하는 클라우드 컴퓨팅 모델. FaaS(Function as a Service) 기반. 사용한 만큼만 과금, 자동 스케일링.
왜 필요할까?
기존 방식의 한계를 넘기 위해
어떻게 동작하나?
복잡한 문제 → 서버리스 컴퓨팅 적용 → 더 빠르고 안전한 결과!
핵심 한 줄:
서버리스 컴퓨팅 = 똑똑하게 문제를 해결하는 방법
비유: 서버리스 컴퓨팅은 마치 요리사가 레시피를 따르는 것과 같아. 혼란스러운 재료들을 정해진 순서대로 조합하면 → 맛있는 요리(최적 결과)가 나오지! 🍳