FaaS
IT 위키
- Function as a Service
- 분산된 대형 인프라 자원에 함수를 등록하고 함수가 실행되는 횟수만큼 비용을 지불하는 방식의 서비스
- 주로 서버리스(serverless) 컴퓨팅을 구현하기 위해 사용
동작 구조[편집 | 원본 편집]
- 개발자가 비즈니스 로직을 작성하면 플랫폼이 관리를 전담하는 Linux 컨테이너에서 이를 실행
- Function 요청 수에 따라 자동 스케일링
- 실제 호출 및 동작이 된 시간 및 사용된 자원량에 따라 과금
FaaS의 이점[편집 | 원본 편집]
- 개발자 생산성 향상 및 개발 시간 단축
- 서버 관리의 부담이 없음
- 손쉬운 확장 및 플랫폼에서 관리하는 수평적 스케일링
- 필요한 경우에만 리소스를 사용하거나 지불
- 거의 모든 프로그래밍 언어로 기능 작성 가능
사례[편집 | 원본 편집]
- AWS Lambda
- Google Cloud Functions
- Microsoft Azure Functions(오픈소스)
- OpenFaaS(오픈소스)
BaaS와의 차이[편집 | 원본 편집]
구분 | BaaS | FaaS |
---|---|---|
정의 | 앱 개발에 필요한 기능을 API로 처리 | 대형 인프라에 원하는 기능을 등록하고 사용 |
특징 | 구현하기 복잡한 기능을 미리 개발된 API로 사용 | 분산 컴퓨팅 자원을 고유 서버 처럼 활용 |
장점 | 시스템 복잡도 감소 | 유연한 서버 자원 이용 |
사례 | Firebase, Sendbirds 등 | AWS Lambda, Google Cloud Functions 등 |
기술사 기출[편집 | 원본 편집]
- 정보관리기술사 121회 1교시
같이 보기[편집 | 원본 편집]
참고 문헌[편집 | 원본 편집]
- 정보관리기술사 121회 기출풀이 자료(아이리포 왕멘토)
- https://www.redhat.com/ko/topics/cloud-native-apps/what-is-faas