백엔드 & API · L0 입문 · 약 7분
서버리스가 뭐야?
서버가 없는 게 아니라, 서버 걱정이 없는 거야
한 줄로 말하면
서버리스는 서버 컴퓨터를 직접 켜두고 관리하지 않고, 요청이 올 때만 내 코드가 잠깐 실행되는 방식이야.
이름이 "서버가 없다(server-less)"지만 진짜로 서버가 없는 건 아니야. 서버는 Vercel, Supabase, Cloudflare, AWS 같은 회사가 굴리고, 우리는 그 위에 "요청 오면 이걸 실행해줘"라는 함수만 올려두는 거야.
어떻게 동작해?
- 대기 — 아무 요청이 없으면 아무것도 안 돌아감 (비용도 거의 0)
- 요청 도착 — "AI한테 이 질문 물어봐줘"
- 깨어남 — 서비스가 내 함수를 실행할 자리를 준비
- 실행 — 사용자 확인 → 비밀 키로 AI 호출 → 답 받기
- 응답 후 정리 — 답을 돌려주고, 잠시 뒤 다시 잠듦
- Supabase Edge Functions: Supabase 프로젝트 안에서 돌아가는 함수 (Deno 기반)
- Vercel Functions: Next.js 프로젝트의 서버 코드가 이걸로 돌아가
- Cloudflare Workers: 전 세계 가까운 곳에서 빠르게 실행
- AWS Lambda: 서버리스 함수의 원조 격인 서비스
알아둬야 할 단점
- 첫 요청이 느릴 수 있어: 한동안 안 쓰다가 깨어날 때 준비 시간이 걸려. 이걸 콜드 스타트라고 해
- 실행 시간 제한: 한 번에 몇 초~몇 분까지만 돌아가. 아주 긴 작업(대용량 영상 변환 등)엔 안 맞아
- 기억을 못 해: 실행이 끝나면 함수 안의 변수나 임시 파일이 사라질 수 있어. 남겨야 하는 건 DB나 파일 저장소에
- 잘못 쓰면 요금 폭탄: 쓴 만큼 내니까, 무한 반복 버그나 공격을 받으면 그만큼 청구돼
언제 쓰고, 어떻게 시킬까
- 👍 잘 맞아: API 키 숨기기, 결제 확인, 메일 발송, 웹훅 받기, 가끔 오는 요청
- 🤔 고민해 봐: 실시간 채팅처럼 연결을 오래 유지해야 하는 기능, 몇십 분 걸리는 작업, 요청이 1년 내내 아주 많은 서비스
확인 퀴즈
Q. 서버리스에 대한 설명으로 맞는 건?
- 서버가 전혀 없다
- 서버는 서비스 회사가 관리하고, 요청이 올 때 내 함수가 실행된다
- 항상 켜져 있어서 콜드 스타트가 없다
- 실행 시간 제한이 없다
정답 보기
2번. 서버는 있지만 관리는 서비스 회사가 해. 우리는 함수만 올리고, 요청이 올 때 실행돼.
Q. 서버리스 함수 안의 변수에 "오늘 방문자 수"를 저장했어. 어떻게 될까?
- 영원히 잘 쌓인다
- 함수가 새로 시작되면 값이 사라질 수 있다
- 자동으로 DB에 저장된다
- 다른 사용자 폰에 저장된다
정답 보기
2번. 서버리스 함수는 언제든 새로 시작돼. 남겨야 하는 값은 DB에 저장해야 해.
Q. 오랜만에 함수를 불렀더니 첫 요청만 유난히 느려. 이 현상의 이름은?
바코친 앱에서 퀴즈 풀고 AI한테 물어보기- 콜드 스타트
- 레이트 리밋
- 캐시 히트
- 롤백
정답 보기
1번. 잠들어 있던 함수가 깨어나며 준비하는 시간 때문에 생기는 지연을 콜드 스타트라고 해.
무료 · 카카오로 바로 시작 · 레슨 243개