서버 사이드 렌더링과 클라이언트 사이드 렌더링의 차이점은 무엇인가요?

2025. 1. 9. 10:57· 백엔드 면접 질문
목차
  1. 1. SSR(Server Side Rendering)
  2. 1 - 1. SSR의 장단점
  3. 2. CSR(Client Side Rendering)
  4. 2 - 1. CSR의 장단점
  5. 3. 정리
  6. References

1. SSR(Server Side Rendering)

 

웹 애플리케이션에서 페이지를 렌더링하는 방식 중 하나로,

서버에서 HTML을 생성하여 브라우저로 전송하는 방식이다.

사용자가 요청을 보내면 서버가 데이터를 처리하고 완전한 HTML을 반환한다.

브라우저는 이를 받아 바로 화면에 표시한다.

 

1 - 1. SSR의 장단점

 

1 - 1 - 1. SSR의 장점

 

  1. 빠른 초기 로딩: 서버에서 HTML을 제공하기 때문에 첫 화면 로딩 속도가 빠르다.
  2. SEO 최적화: 검색 엔진 크롤러가 완전한 HTML 콘텐츠를 쉽게 읽고 인덱싱할 수 있어 SEO에 유리하다.
  3. 모든 디바이스에서 일관된 성능: 클라이언트의 성능에 크게 의존하지 않는다.

 

1 - 1 - 2. SSR의 단점

 

  1. 서버 부하 증가: 모든 요청에 대해 서버가 페이지를 렌더링해야 하므로 서버 부담이 커질 수 있다.
  2. 페이지 전환 시 느림: 새로운 페이지 요청마다 서버와 통신해야 하므로 페이지 전환 속도가 느릴 수 있다.
  3. 복잡한 설정: 서버와 클라이언트 환경 모두를 구성해야 하므로 개발 및 유지보수가 복잡할 수 있다.

 

2. CSR(Client Side Rendering)

 

브라우저(클라이언트)가 JavaScript를 사용해 동적으로 HTML을 생성하는 방식이다.

서버는 기본적인 HTML과 JavaScript 파일만 전송하며, 브라우저가 이를 실행하여 화면을 구성한다.

 

2 - 1. CSR의 장단점

 

2 - 1 - 1. CSR의 장점

 

  1. 빠른 페이지 전환: 초기 로딩 이후에는 필요한 데이터만 요청하므로 페이지 전환이 빠르고 부드럽다.
  2. 서버 부하 감소: 렌더링 작업이 클라이언트에서 이루어지기 때문에 서버 부담이 적다.
  3. 풍부한 상호작용: 동적인 사용자 인터페이스를 구현하기에 적합하다.

 

2 - 1 - 2. CSR의 단점

 

  1. 느린 초기 로딩: 브라우저가 JavaScript 파일을 다운로드하고 실행해야 하므로 초기 로딩 시간이 길어질 수 있다.
  2. SEO 문제: 초기 HTML이 비어있어 검색 엔진 크롤러가 콘텐츠를 제대로 인덱싱하지 못 할 수 있다.
  3. 클라이언트 성능 의존: 성능이 낮은 디바이스에서는 사용자 경험이 저하될 수 있다.

 

3. 정리

 

SSR과 CSR은 각각의 장단점이 뚜렷하며, 프로젝트의 요구 사항에 따라 적절히 선택해야 한다.

 

References

https://www.maeil-mail.kr/question/103

https://blog.the-compass.kr/csr-ssr-spa-mpa-ede7b55c5f6f

 

'백엔드 면접 질문' 카테고리의 다른 글

Record를 DTO로 사용하는 이유가 뭔가요?  (0) 2025.02.03
TCP 3-way handshake에 대해서 설명해주세요.  (0) 2025.01.07
로그와 메트릭을 설명해주세요.  (0) 2025.01.06
HTTP 메서드에서 멱등성(Idempotent)이란 무엇인가요?  (0) 2025.01.03
웹 브라우저에 www.google.com 을 입력했을 때 어떤 과정이 이뤄지나요?  (0) 2024.12.31
  1. 1. SSR(Server Side Rendering)
  2. 1 - 1. SSR의 장단점
  3. 2. CSR(Client Side Rendering)
  4. 2 - 1. CSR의 장단점
  5. 3. 정리
  6. References
'백엔드 면접 질문' 카테고리의 다른 글
  • Record를 DTO로 사용하는 이유가 뭔가요?
  • TCP 3-way handshake에 대해서 설명해주세요.
  • 로그와 메트릭을 설명해주세요.
  • HTTP 메서드에서 멱등성(Idempotent)이란 무엇인가요?
Griotold
Griotold
Griotold
Griotold's Olive Oil
Griotold
전체
오늘
어제
  • 분류 전체보기 (89)
    • 테스트 (4)
      • Spock (1)
      • Junit (3)
    • 디자인 패턴 (1)
    • 깃 (2)
    • 리팩토링 (4)
    • 항해플러스 백엔드 5기 (3)
    • 인프런 워밍업 클럽 스터디 2기 백엔드 (4)
    • 코딩테스트 (10)
    • 자바 심화 2기 (7)
    • 백엔드 면접 질문 (19)
    • 인프라 (17)
      • docker (5)
      • CI, CD (5)
      • Monitoring (6)
      • AWS (1)
    • 데이터베이스 (1)
      • Redis (1)
    • 메시지큐 (3)
      • rabbitMQ (0)
      • kafka (3)
    • MSA (7)
    • JPA (1)
    • Spring (5)
      • Spring AI (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

공지사항

인기 글

태그

  • 99클럽
  • 리팩터링
  • prometheus
  • CICD
  • 백준
  • 자바
  • 읽기좋은코드
  • 배포
  • TIL
  • 오블완
  • 개발자취업
  • grafana
  • junit5
  • backend
  • 이분탐색
  • JPA
  • 항해99
  • 백엔드
  • java
  • Spring
  • MSA
  • DATABASE
  • micrometer
  • 코딩테스트준비
  • github
  • actuator
  • githubactions
  • 프로그래머스
  • docker
  • 티스토리챌린지

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
Griotold
서버 사이드 렌더링과 클라이언트 사이드 렌더링의 차이점은 무엇인가요?
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.