SSR, SSG, CSR 理解する

SSR: Server Side Rendering

リクエストがきたらサーバー側でページを生成してクライアントに返す。

リクエストが来た後にページを生成するため、表示が遅い。

ページ移動のたびに都度都度データベースとやり取りする。

SSG: Static Site Generation

ページを事前に生成しておく。

リクエスが来たら生成しておいたページを返す。

表示が早い。

CSR: Client Side Rendering

クライアント側でページを生成する。

SSRが遠くの工場で生成してから配送するという考え方で、
CSRは家の近くに工場を置いてそこで生成し、すぐに配送といった感じ。

ページ移動のたびに都度都度データベースとやり取りする。

SSG最強じゃない?

ストックしたサイトが古くなる問題がある。

記事更新されても検知する機能とかない。
だから記事が古くなって行く。
Next.jsはISRという機能がある。
ページに賞味期限を設け、そのストックが消滅する。
リクエスト来て、賞味期限が切れている場合、最新バージョンが作られる。

ISRにon demand機能をつけた。
賞味期限ではなく、しかるタイミングで更新してくれる。
そもそもこのタイミングで更新するべきである。というタイミングで更新してくれる。