export default function Page() {
return (
<h1>페이지 라우터 공부 7일차 🤓</h1>
);
}
SSG 방식으로 생성된 정적 페이지를 일정 시간을 주기로 재생성하는 기술.
SSG를 적용하기 위해 작성한 함수인 getStaticProps()
의 반환 객체에 'revalidate' property를 추가한다. 여기서 3은 페이지 생성 주기를 초 단위로 적은 것!
그래서 ~ SSR이나 SSG만 사용하기보다는, 두 방식의 장점을 모두 가지고 있는 ISR을 사용하자.
ISR 방식이 정해진 유효 기간마다 페이지를 재생성하는 방식이라는 것을 생각해보면, 시간과 관계 없이 사용자의 행동에 따라 데이터가 업데이트되는 페이지에는 ISR을 적용하기가 어렵다는 특징이 있다.
1️⃣ 유효 기간이 지나기 전에 페이지 업데이트가 이뤄져야 할 경우.
➡️ 최신 데이터를 즉각적으로 반영하기 어렵다는 문제점이 존재.
2️⃣ 유효 기간이 지나고 페이지 업데이트가 이뤄져야 할 경우.
➡️ 페이지 업데이트가 필요하지 않은 때에도 불필요한 페이지 재생성이 발생. 리소스 과다 사용.
res.revalidate('/')
에 의해 해당 경로의 페이지를 재생성함.➡️ 해당 경로 페이지에서 새로고침을 하더라도 페이지 정보가 변경되지 않지만, http://localhost:3000/api/revalidate 로 revalidate 요청을 보내고 나면 페이지의 정보가 업데이트되는 것을 확인할 수 있다.