FEInterview Prep

Velog

리액트 개발자를 위한 SSR 심층 분석

리액트 개발자를 위한 서버 사이드 렌더링(SSR)의 동작 원리를 깊이 파고드는 글로, renderToString에서 Streaming SSR, Suspense 통합까지 SSR의 진화 과정을 설명합니다. SSR의 각 단계(서버 렌더링, 하이드레이션, 인터랙티브 상태)를 이해하면 성능 최적화와 아키텍처 결정에 있어 더 나은 판단을 내릴 수 있습니다.

2025-04-10·4분 읽기
React성능
원문 보기 ↗

핵심 요약

이 아티클은 React 컴포넌트와 렌더링 흐름를 실무 판단 기준으로 다시 정렬해 주는 읽기 자료입니다. 리액트 개발자를 위한 서버 사이드 렌더링(SSR)의 동작 원리를 깊이 파고드는 글로, renderToString에서 Streaming SSR, Suspense 통합까지 SSR의 진화 과정을 설명합니다. SSR의 각 단계(서버 렌더링, 하이드레이션, 인터랙티브 상태)를 이해하면 성능 최적화와 아키텍처 결정에 있어 더 나은 판단을 내릴 수 있습니다.

이 아티클은 React 컴포넌트와 렌더링 흐름를 면접에서 바로 꺼낼 수 있는 답변 프레임으로 접어 두는 메모처럼 읽으면 좋습니다.

React 컴포넌트와 렌더링 흐름를 설명할 때 정의만 말하면 답변이 얕아지기 쉽습니다. SSR은 서버에서 HTML을 생성해 FCP를 개선하지만, 하이드레이션 전까지는 인터랙션이 불가능하다 실무 판단 근거와 면접 답변의 밀도를 동시에 끌어올릴 수 있습니다.

학습 포인트

면접 답변으로 연결할 학습 포인트입니다.

SSR은 서버에서 HTML을 생성해 FCP를 개선하

SSR은 서버에서 HTML을 생성해 FCP를 개선하지만, 하이드레이션 전까지는 인터랙션이 불가능하다 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

SSRHTMLFCP서버에서
자주 하는 오해

SSR은 서버에서 HTML을 생성해 FCP를 개선하를 개념으로만 기억하고 맥락 없이 적용하면 SSR은 서버에서 HTML을 생성해 FCP를 개선하지만, 하이드레이션 전까지는 인터랙션이 불가능하다 성능 측정을 건너뛰면 체감 품질이 나빠져도 원인을 놓치기 쉽습니다.

Streaming SSR은 HTML을 청크 단위로

Streaming SSR은 HTML을 청크 단위로 점진적으로 전송해 TTFB를 줄이고 UX를 개선한다 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

StreamingSSRHTMLTTFB
자주 하는 오해

Streaming SSR은 HTML을 청크 단위로 를 개념으로만 기억하고 맥락 없이 적용하면 Streaming SSR은 HTML을 청크 단위로 점진적으로 전송해 TTFB를 줄이고 UX를 개선한다 성능 측정을 건너뛰면 체감 품질이 나빠져도 원인을 놓치기 쉽습니다.

React 18의 Selective Hydratio

React 18의 Selective Hydration은 중요한 컴포넌트부터 우선 하이드레이션하여 TTI를 개선한다 이 포인트를 알고 있으면 비슷한 상황에서 왜 이 접근을 선택하는지까지 설명할 수 있습니다.

ReactSelectiveHydrationTTI
자주 하는 오해

React 18의 Selective Hydratio를 개념으로만 기억하고 맥락 없이 적용하면 React 18의 Selective Hydration은 중요한 컴포넌트부터 우선 하이드레이션하여 TTI를 개선한다 성능 측정을 건너뛰면 체감 품질이 나빠져도 원인을 놓치기 쉽습니다.

읽는 순서

  1. 1이론

    "리액트 개발자를 위한 SSR 심층 분석"의 멘탈 모델과 요약을 먼저 읽고, React 컴포넌트와 렌더링 흐름와 관련된 핵심 용어 3개를 적어보세요.

  2. 2구현

    리액트 개발자를 위한 SSR 심층 분석에서 다룬 아이디어를 작은 예제로 직접 구현하거나 기존 코드에 대입해 보면서 적용 조건을 확인하세요.

  3. 3실무

    현재 프로젝트에서 React 컴포넌트와 렌더링 흐름와 연결되는 화면이나 코드 리뷰 사례를 찾아, 어디서 같은 판단이 필요한지 정리해보세요.

  4. 4설명

    동료에게 "SSR(Server-Side Rendering)과 CSR(Client-Side Rendering)의 차이점과 각각의 장단점을 설명해주세요."에 대한 답을 5분 안에 설명해보세요. 막히는 부분이 아직 이해가 얕은 구간입니다.

면접 연결 질문

easySSR(Server-Side Rendering)과 CSR(Client-Side Rendering)의 차이점과 각각의 장단점을 설명해주세요.
힌트

[감점 답변] 용어 정의만 반복하거나 "리액트 개발자를 위한 SSR 심층 분석에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] 초기 로드 속도, SEO, 서버 부하, 인터랙션 응답성 측면에서 비교하세요. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

hard리액트의 하이드레이션(Hydration)이란 무엇이며, 하이드레이션 불일치가 발생하는 원인과 해결 방법은 무엇인가요?
힌트

[감점 답변] 용어 정의만 반복하거나 "리액트 개발자를 위한 SSR 심층 분석에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] 서버에서 생성된 HTML에 이벤트 리스너를 붙이는 과정이며, 날짜/랜덤값/브라우저 전용 API 사용이 불일치 원인입니다. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

hardReact 18의 Streaming SSR과 Selective Hydration이 기존 SSR 대비 어떤 성능 이점을 제공하나요?
힌트

[감점 답변] 용어 정의만 반복하거나 "리액트 개발자를 위한 SSR 심층 분석에서 그렇게 하더라" 수준으로 답하면 감점 포인트입니다. 면접관은 개념을 외운 사람보다 판단 근거를 말하는 사람을 찾습니다. [좋은 답변] TTFB 개선, 중요한 인터랙션 먼저 활성화, Suspense 경계를 활용한 점진적 렌더링을 설명하세요. 가능하면 선택 이유, 트레이드오프, 실제로 문제가 되는 상황까지 함께 연결하세요.

자기 점검

"SSR은 서버에서 HTML을 생성해 FCP를 개선하"가 왜 중요한지 스크롤 올리지 않고 한 문장으로 설명해보세요.
SSRHTMLFCP서버에서
자주 하는 오해

"SSR은 서버에서 HTML을 생성해 FCP를 개선하"를 기능 목록으로만 외우는 것. 실제로는 왜 이 접근이 필요한지와 적용 조건까지 설명해야 합니다.

리액트 개발자를 위한 SSR 심층 분석에서 강조한 판단 기준을 실무 예시와 함께 설명해보세요.
StreamingSSRHTMLTTFB
자주 하는 오해

좋은 사례만 기억하고 실패 조건을 빼먹는 것. 실제 면접에서는 언제 위험해지는지까지 함께 말해야 합니다.