0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Next.jsのSSG,SSRとは

Last updated at Posted at 2023-09-27

そもそもなぜNext.jsは必要か

Reactだとページ数が少ない小規模開発には向いていますが、ページ数が多い大規模開発では
Next.jsが向いています
。読み込み速度もnext.jsを使った方が速いです。
ですが、ReactはSPA化ができてRailsやLaravelで作ったアプリに入れることができるメリットが
あるので、Reactがダメって訳ではないです。

詳しい説明はこの後します。

プリレンダリング(Pre-rendering)

SSG、SSRの前に基礎知識であるPre-renderingについてです。

Pre-renderingとは事前にHTMLを生成し、レンダリングすることです。
Reactでは、レンダリングはユーザーのページアクセス時に行われるのでどうしても処理速度が遅くなってしまいます

しかし、Pre-renderingをすると事前に生成しているHTMLファイルを出力するので、表示速度が速くなります。
スクリーンショット 2023-09-27 17.30.17.png

引用 https://midorigame-jo.com/ssg-ssr/

Next.jsはデフォルトで全ページに対してPre-renderingをするみたいです。

SSGとは

SSG(Static Site Generator)「静的生成」のことです。

アプリが完成してデプロイしよーという時に、ビルド(デプロイできるように組み合わせる)します。
SSGはビルドの時にHTMLを1度だけ生成します
そしてユーザーから
各リクエストに対して再利用でき、生成されたHTMLをユーザーに返せます。

公式では基本的には、SSGを使用することを推奨しているみたいです。

スクリーンショット 2023-09-27 17.41.58.png

引用 https://midorigame-jo.com/ssg-ssr/

SSRとは

SSR(Server Side Rendering(サーバーサイドレンダリング))のことです。
SSRはクライアントからのリクエストの度にHTMLを生成します。
リクエストの度にHTMLを生成するので、SSGに比べるとパフォーマンスが悪いです。

スクリーンショット 2023-09-27 17.49.54.png

引用 https://midorigame-jo.com/ssg-ssr/

SSG,SSRの使い分け

SSG SSR
ブログ、ドキュメント、Qiitaなど ユーザーの更新画面
ECサイトなどの商品ページ SNSのタイムライン

⚫︎SSGは情報などを更新せず1回情報を取得できればOKです。
つまりビルド後に変更する必要がないページに使われます。

⚫︎SSRはユーザーの情報などを更新したります。
つまりユーザーのリクエストによって表示内容が変わるページで使われます

資料

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?