기본 개념
- 서버가 없는 백엔드라는 뜻이 아니라, 직접 서버를 관리하지 않아도 되는 백앤드 (Backend without server MGMT)
- 서버리스에서는 백엔드를 작은 함수단으로 쪼개서 직접관리하지 않는 서버로 올림
장점
- 서버리스가 아닌경우 서버는 24시간 돌아가며 요청에 응답할 준비를 하고 있음
- 서버리스는 잠든 상태에서 요청이 오면 작업을 수행하고 다시 잠듬 (cold start)
- 요청 건당 돈을 내기 때문에 가격면에서 저렴
- 1000명이 같은 작업을 요청할 경우 같은 함수의 복사본을 1000개 만들어서 수행
단점
- cold start에 의한 응답시간
- AWS 람다의 경우 자주 쓰이는 함수를 파악해 잠들지 않게 하고 대기 시킨다
- 서버리스 제공자에 대한 의존성 증가
- 서버에 대한 통제를 잃음
- 다른 서버리스로 갈아타는 것은 쉬운 작업이 아님
추천하는 대상
- 사이드프로젝트 또는 빠른 프로토타입을 출시하고 싶은 경우
종류
- AWS lambda
- Google Cloud Functions
- Apex
- Terraform