Skip to content

서비스 구조 4가지 패턴


학습 목표

  1. 웹 서비스의 4가지 아키텍처 패턴을 구분하고 설명할 수 있다.
  2. 각 패턴의 난이도, 비용, 유지보수 부담을 비교할 수 있다.
  3. 자신의 프로젝트에 적합한 패턴을 선택할 수 있다.
  4. **서버리스(Serverless)**의 개념과 장점을 이해할 수 있다.

개요

웹 서비스의 구조는 크게 4가지 패턴으로 나뉜다. 숫자가 커질수록 복잡해지고, 할 수 있는 것도 많아진다. 하지만 복잡하다고 반드시 좋은 것은 아니다. 목적에 맞는 가장 단순한 구조를 선택하는 것이 핵심이다.

패턴구성난이도예시
Frontend만★☆☆☆☆계산기, PDF 변환기
Frontend + 서버리스 + 외부 데이터★★☆☆☆날씨 정보, 환율 조회
Frontend + 서버 + 외부 데이터★★★★☆뉴스 요약, 게임 전적
Frontend + 서버 + DB★★★★★회원가입, 게시판, 댓글

패턴 ①: 화면만 있는 사이트 (Frontend만)

난이도: ★☆☆☆☆ | 서버 필요: 없음 | DB 필요: 없음

특징

  • 모든 로직이 **사용자의 브라우저(클라이언트)**에서 실행된다
  • 외부 서버와 통신하지 않는다
  • 데이터 저장이 필요 없는 서비스에 적합하다

대표 예시

서비스설명
계산기숫자 입력 → 계산 결과 표시
PDF 변환기파일 업로드 → 브라우저에서 변환 → 다운로드
이미지 리사이즈이미지 업로드 → 크기 조절 → 다운로드
색상 팔레트 생성기색상 선택 → 조합 생성
텍스트 카운터텍스트 입력 → 글자 수/단어 수 표시

장점과 단점

장점단점
구현이 가장 쉽다외부 데이터를 활용할 수 없다
서버 비용이 0원기능 확장에 한계가 있다
배포가 매우 간단하다복잡한 처리는 느릴 수 있다

패턴 ②: 화면 + 외부 데이터 (Frontend + 서버리스 + 외부 데이터)

난이도: ★★☆☆☆ | 서버 필요: 서버리스 | DB 필요: 없음

서버리스(Serverless)란?

서버리스는 "서버가 없다"는 뜻이 아니다. **"서버를 직접 관리하지 않아도 된다"**는 뜻이다.

비교 항목전통적 서버서버리스
서버 관리직접 구매/설치/관리클라우드가 자동 관리
비용24시간 가동 = 항상 비용사용한 만큼만 과금
확장성트래픽 증가 시 직접 대응자동 확장
시작 난이도높음낮음

비유: 전통적 서버는 자가용을 사서 직접 운전하는 것이고, 서버리스는 필요할 때만 택시를 타는 것이다.

대표 예시

서비스외부 데이터서버리스 역할
날씨 정보WeatherAPIAPI 키 보호 + 데이터 전달
환율 정보환율 API실시간 환율 조회
뉴스 헤드라인News API최신 뉴스 가져오기
주식 시세Stock API실시간 시세 조회

장점과 단점

장점단점
외부 데이터를 활용할 수 있다서버리스 함수 작성 필요
서버 관리 부담 없음외부 API 의존성
비용이 거의 무료Cold Start(첫 호출 지연) 가능성
자동 확장

패턴 ③: 직접 서버 운영 (Frontend + 서버 + 외부 데이터)

난이도: ★★★★☆ | 서버 필요: 있음 | DB 필요: 없음 또는 캐시용

특징

  • 직접 서버를 운영한다 (AWS EC2, DigitalOcean 등)
  • 캐싱, 로깅, 복잡한 데이터 가공 등 더 많은 제어가 가능하다
  • 하지만 서버 관리, 보안 업데이트, 비용 등 부담이 크다

대표 예시

서비스서버가 필요한 이유
뉴스 요약 서비스대량의 뉴스를 수집하고 AI로 요약
게임 전적 검색API 호출 결과 캐싱, 통계 계산
가격 비교여러 쇼핑몰 가격을 주기적으로 수집

장점과 단점

장점단점
완전한 제어 가능서버 관리 필요
캐싱으로 빠른 응답월 서버 비용 발생
복잡한 로직 처리 가능보안 관리 필요

패턴 ④: 서버 + 데이터베이스 (Frontend + 서버 + DB)

난이도: ★★★★★ | 서버 필요: 있음 | DB 필요: 있음

특징

  • 데이터를 직접 저장하고 조회하는 서비스
  • 사용자 계정, 게시글, 댓글 등 영구 데이터가 필요한 경우
  • 가장 복잡하지만 할 수 있는 것이 가장 많다

대표 예시

서비스DB가 필요한 이유
회원 시스템사용자 정보 저장
게시판글, 댓글 저장
SNS팔로우, 좋아요, 피드 저장
이커머스상품, 주문, 결제 정보 저장

장점과 단점

장점단점
데이터 저장/조회 가능가장 복잡한 구조
가장 많은 기능 구현 가능DB 관리 + 서버 관리
사용자 맞춤 서비스 가능보안 리스크 (개인정보)

4가지 패턴 한눈에 비교


패턴 선택 가이드

어떤 패턴을 선택할지 모르겠다면, 아래 의사결정 흐름을 따라가면 된다.


우리의 선택: ②번 패턴

이 학습 자료에서는 **②번 패턴(Frontend + 서버리스 + 외부 데이터)**을 선택한다.

선택 이유

기준②번 패턴 평가
접근성서버리스라 관리 부담 없음
비용무료 범위 내에서 충분히 운영 가능
기능외부 API를 활용해 ③번과 비슷한 기능 구현 가능
학습 효과서버리스 개념을 배울 수 있다
확장성나중에 ③, ④로 확장하기 좋은 출발점

핵심: ②번은 가장 적은 노력으로 가장 많은 것을 할 수 있는 최적의 시작점이다.


4가지 패턴 종합 비교표

항목① Frontend만② + 서버리스③ + 서버④ + 서버 + DB
난이도★☆☆☆☆★★☆☆☆★★★★☆★★★★★
서버 비용$0$0~5$5~50+$10~100+
외부 데이터불가가능가능가능
데이터 저장불가불가캐시 가능완전 가능
유지보수거의 없음거의 없음보통높음
확장성낮음보통높음매우 높음
추천 대상초보자초보~중급중급~고급고급

핵심 정리

  • 4가지 패턴 중 목적에 맞는 가장 단순한 구조를 선택하라.
  • 서버리스는 서버를 직접 관리하지 않고도 서버 역할을 수행한다.
  • ②번 패턴이 비용, 난이도, 기능의 균형이 가장 좋다.
  • 처음부터 완벽한 구조를 만들 필요 없다. 시작한 뒤 확장하면 된다.