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?

CSR(クライアントサイドレンダリング)

JSを使用してクライアント(ブラウザ側)でレンダリングを行う

  • デメリット
    • JSのサイズが大きくなる
    • ユーザーのデバイススペック次第で初回表示に時間がかかる
    • SEOに不利(クローラーがJSを実行しない場合、内容が読み取れない)

SSG(スタティックサイトジェネレーション)

サーバーにあらかじめビルドしたHTMLを置いてAPIでfetchも済ましておく方法

  • メリット
    • CDNにキャッシュさせるとSSRより高速な配信が可能
    • 性能およびセキュリティの向上(動的要素が少ないため)
  • デメリット
    • 多くのページが存在するときにビルドの時間がかかる
    • データが更新された場合に再ビルドするまでページの内容が更新されない

SSR(サーバーサイドレンダリング)

リクエストがきたときにサーバーで毎回HTMLを作る

  • メリット
    • 初回表示が速い(サーバーが事前にHTMLを生成するため)
    • SEOに有利(クローラーがHTMLを直接読み取れる)
  • デメリット
    • サーバー負荷が高くなりがち
    • レスポンスが遅延する可能性がある(サーバーでのレンダリング処理が必要なため)

ISR(インクリメンタルサイトリジェネレーション)

SSGと同じくサーバーにあらかじめビルドしたHTMLを置いておく方法。
一定の間隔で自動的に再ビルドする。

  • メリット
    • SSGの高速な配信と、最新データへの自動更新が可能
    • 導入が比較的簡単
  • デメリット
    • キャッシュの管理が少し複雑になる
    • 更新間隔が長い場合、リアルタイム性が欠ける

ISG (インクリメンタルスタティックジェネレーション)

SSGの改良版

  1. 未生成のページに対してリクエストがあった際、データを取得していない空のHTMLと、JSが返されブラウザ側でデータをfetchしてHTMLを構築
  2. 1のリクエストの際、同時にサーバー側でも同様のfetchが行われる
  3. 2回目以降のアクセスではサーバー側で構築されたHTMLが返却される
  • メリット
    • 未知のページでも即座に対応できる
    • ページ生成の時間が最初のリクエストでのみ発生するため、ユーザー体験が向上
  • デメリット
    • 最初のリクエストが若干遅くなる
    • サーバーへの負荷が一時的に集中する可能性がある
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?