App router 랜더링 방식에 대해 질문 드립니다.
선생님 데이터 캐시부분 보고 있는데요
page router의 SSG, ISR처럼은 app router에서 동작이 일어나지 않는걸까요? 아니면 동일한건지 궁금합니다. SSG의 경우는 페이지를 build타임에 페이지를 만드는데 app router는 fetching 한 데이터만 캐시하는것 같아 질문 드립니다.
답변 2
0
안녕하세요 이정환입니다.
App Router 버전의 Next.js 앱에는 SSG, ISR 이라는 개념 대신에 Static, Dynamic 페이지라는 개념이 존재합니다. 이는 이후의 5섹션 "페이지 캐싱"에서 배우시게 될 테니 이후의 섹션을 학습하시면서 차차 알아나가시게 될 겁니다 😃
0
안녕하세요, 인프런 AI 인턴입니다. uphoon님!
App Router와 Page Router의 SSR, SSG, ISR 방식에 대해 질문해 주셨군요. 각 방식의 차이점을 간단히 설명드리겠습니다.
Page Router의 SSG와 ISR:
- SSG (Static Site Generation): 이 방식은 빌드 타임에 정적 페이지를 생성하여 클라이언트에게 제공합니다. 이는 데이터가 자주 변경되지 않는 경우에 매우 유용합니다.
- ISR (Incremental Static Regeneration): 기존의 SSG 개념에 추가적으로 일정 주기마다 페이지를 다시 생성할 수 있는 기능입니다. 이는 빌드 후에도 일부 페이지가 정기적으로 업데이트되어 최신 상태의 정적 페이지를 제공할 수 있습니다.
- SSG (Static Site Generation): 이 방식은 빌드 타임에 정적 페이지를 생성하여 클라이언트에게 제공합니다. 이는 데이터가 자주 변경되지 않는 경우에 매우 유용합니다.
App Router:
- App Router는 새로운 데이터 패칭 방식으로, 서버 컴포넌트에서도 데이터를 패칭하여 사용할 수 있습니다. 이는 데이터 캐시가 중요한 역할을 하며, fetching 된 데이터가 캐시되어 빠른 페이지 로딩을 지원합니다.
- App Router는 페이지 자체보다는 데이터를 중심으로 처리된다는 점에서 캐싱 전략이 Page Router의 SSG와 약간 다를 수 있습니다. 하지만 Next.js는 App Router에서도 여전히 사전 렌더링 및 ISR 기능을 제공하여 페이지의 효율적인 렌더링을 지원합니다.
- App Router는 새로운 데이터 패칭 방식으로, 서버 컴포넌트에서도 데이터를 패칭하여 사용할 수 있습니다. 이는 데이터 캐시가 중요한 역할을 하며, fetching 된 데이터가 캐시되어 빠른 페이지 로딩을 지원합니다.
따라서 App Router에서도 SSG와 비슷한 방식으로 데이터를 사전 패칭하고 캐시하지만, 주로 데이터 중심으로 작동하기 때문에 페이지의 전체적인 랜더링 방식은 다소 다르게 경험하실 수 있습니다.
자세한 예시와 함수 사용법은 Next.js 공식 문서에서 확인해 주시기 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
풀라우트캐시 동작 원리에서 데이터 캐시 관련 질문
0
23
2
next.js 프로젝트
0
28
1
Next.js + Tanstack Query BFF 구조 질문
0
29
2
Next.js 사전렌더링 이해하기 부분
0
34
2
모달 관련 질문
0
42
3
렌더링 관련 질문
0
80
2
중복으로 하나의 api를 요청할 때 캐싱 옵션 통일화
0
64
2
라우트 세그먼트 옵션 강좌 노트에 사소한 제보 남깁니다.
0
65
2
SSR시 context에 params말고 query를 사용하면 안되나요?
0
75
2
npx prisma db push 시 에러가 뜹니다.
0
94
3
vercel 배포를 실패하였습니다.
0
101
3
Image 컴포넌트 사용시 브라우저 콘솔에 경고는 왜 뜨는걸까요?
0
57
2
getServerSideProps 함수와 SSR의 관계
0
78
6
없는 페이지인데 풀라우트캐시로 저장이 되는 이유가 궁금합니다
0
61
2
실제 프로젝트에서 SSR 사용에 관해서 질문드립니다.
0
117
2
일반적인 nextjs project architecture에 대하여..
0
90
2
2.14 Search에서 작성한건 static이긴하지만 CSR이 아닌가요?
0
74
2
배포 시 오류 발생
0
90
2
백엔드 서버 오류납니다.
0
83
2
취약점 제거시 nestjs 버전 문제가 생길까요?
0
93
1
eslint.config.mjs 내 rules 어떻게 설정 하나요?
0
107
1
[book]/[id]/page.tsx 모달 띄울 때 성능 하락 현상은 ReviewList를 불러오면서 발생하는 문제 같습니다.
0
63
2
빨간줄 설정
0
77
2
익스텐션 질문
0
61
1





