반응형
Ⅰ. 서버리스 컴퓨팅(Serverless Computing) 이란?
개발자가 인프라(서버, 네트워크, OS 등)를 직접 관리하지 않고도 코드 실행에 집중할 수 있도록 하는 클라우드 컴퓨팅 모델입니다.
서버는 물리적으로 존재하지만, 인프라 관리의 책임은 클라우드 제공자에게 있고, 사용자는 이벤트 기반 함수 코드만 배포하면 됩니다. 또한, 인프라 운영 부담 없이 신속한 개발·배포와 탄력적인 확장성을 제공하는 혁신적인 클라우드 모델입니다.초기 단순 이벤트 처리부터 점차 마이크로서비스 아키텍처의 핵심 구성 요소로 진화하고 있으며, 클라우드 시대의 필수 전략 중 하나로 부상하고 있습니다.
Ⅱ. 서버리스 컴퓨팅(Serverless Computing) 주요 특징
항목 | 설명 |
이벤트 기반 실행 | 트리거(이벤트)에 따라 코드가 자동 실행됨 (ex: HTTP 요청, DB 변경, 파일 업로드 등) |
무상태(Stateless) | 함수는 상태를 저장하지 않으며, 각 호출은 독립적으로 실행됨 |
자동 확장(Auto Scaling) | 호출 수에 따라 자동으로 확장됨 (동시 수천 개도 가능) |
요금 과금 방식 | 사용한 시간, 호출 수에 따라 과금 (Idle 시 비용 없음) |
빠른 배포 및 운영 |
인프라 설정 없이 코드만 배포하면 운영가능 |
Ⅲ. 서버리스 컴퓨팅(Serverless Computing) 주요 특징
서버리스 컴퓨팅의 아키텍처는 여러 핵심 구성 요소가 유기적으로 연결된 구조를 가집니다. Function-as-a-Service(FaaS)가 중심에 위치하며, 이를 둘러싼 이벤트 소스, API Gateway, 백엔드 서비스들이 완전한 생태계를 구성합니다.
ⅰ. 이벤트 기반 실행 모델
서버리스의 가장 중요한 특징 중 하나입니다. HTTP 요청, 데이터베이스 변경, 파일 업로드 등 다양한 트리거가 함수 실행을 시작하며, 각 이벤트는 독립적으로 처리됩니다. 이러한 설계는 시스템의 결합도를 낮추고 유지보수성을 크게 향상시킵니다.
ⅱ. 무상태(Stateless) 설계
서버리스 함수의 핵심 원칙입니다. 각 함수 호출은 완전히 독립적이며, 상태 정보는 외부 저장소(DynamoDB, Redis 등)에 저장되어야 합니다. 이는 확장성을 극대화하지만, 동시에 상태 관리 복잡성을 증가시키는 트레이드오프를 가집니다
Ⅳ. 서버리스 컴퓨팅(Serverless Computing) 주요 특징
항목 | 전통적 서버 모델 | 서버리스 컴퓨팅 |
인프라 관리 | 필요 (서버, OS, 패치 등) | 필요 없음 |
확장성 | 수동 또는 설정 필요 | 자동 확장 |
비용 구조 | 상시 인스턴스 과금 | 실행 시간 기준 과금 |
배포 시간 | 상대적으로 느림 | 빠름 |
아키텍처 복잡도 | 높음 (로드밸런싱, 캐싱 등 필요) | 낮음 (내장 기능 활용 가능) |
Ⅴ. 서버리스 컴퓨팅(Serverless Computing) 장·단점
구분 | 항목 | 내용 |
장점 (Advantages) |
운영 비용 절감 | 미사용 시간에는 과금되지 않음 → 비용 효율적 |
개발 생산성 향상 | 인프라 설정, 운영 부담이 제거되어 빠르게 배포 가능 | |
유연한 확장성 | 트래픽 급증 시 자동 확장 가능 → 안정적인 서비스 제공 | |
DevOps 및 CI/CD 친화적 | 함수 단위의 배포 및 관리가 쉬워지며, 마이크로서비스 아키텍처와 궁합이 좋음 | |
단점 (Disadvantages) |
콜드 스타트 문제 | 호출이 없던 함수는 최초 실행 시 지연 발생 |
상태 관리 어려움 | 함수가 Stateless → 외부 저장소 필요 |
|
디버깅/모니터링 어려움 | 함수 실행 로그/트레이싱 설정이 복잡할 수 있음 | |
복잡한 트랜잭션 처리 한계 | 장시간 실행, 복잡한 프로세스에는 부적합 | |
벤더 종속성(Lock-in) | AWS Lambda 등 특정 플랫폼 의존도가 높아질 수 있음 |
Ⅵ. 서버리스 컴퓨팅(Serverless Computing) 대표 기술 및 플랫폼
클라우드 | 서버리스 플랫폼 | 관련 서비스 |
AWS | AWS Lambda | API Gateway, S3, DynamoDB 등 |
Azure | Azure Functions | Logic Apps, Event Grid 등 |
Cloud Functions | Pub/Sub, Firebase 등 | |
IBM | IBM Cloud Functions | Apache OpenWhisk 기반 |
오픈소스 | OpenFaaS, Kubeless, Knative | 쿠버네티스 기반 서버리스 구현 |
Ⅶ. 서버리스 컴퓨팅(Serverless Computing) 활용 사례
분야 | 활용 예시 |
웹 서비스 | API 백엔드, 이미지 업로드 처리, 사용자 인증 |
IoT | 센서 데이터 수신, 이벤트 처리 |
DevOps | 빌드/배포 자동화, 로그 수집 및 분석 |
데이터 처리 | 실시간 스트리밍, ETL, 로그 파서 |
챗봇 | 사용자 요청 시 처리 로직 호출 (예: Lex + Lambda) |
반응형
'클라우드(Cloud)' 카테고리의 다른 글
공급망관리(Supply Chain Management, SCM)에 대해 알아보겠습니다. (4) | 2025.06.23 |
---|---|
화이트 레이블(White Label) 에 대해 알아보겠습니다. (0) | 2025.06.20 |
DevSecOps에 대해 알아보겠습니다. (0) | 2025.03.14 |
DevOps에 대해 알아보겠습니다. (0) | 2025.03.12 |
CASB (Cloud Access Security Broker)에 대해 알아보겠습니다. (1) | 2025.02.10 |