🕌

CSR、SSR、SSG、ISRの違いをわかりやすく解説

2024/07/13に公開

ウェブサイトやアプリケーションを作る際には、どのようにページを表示するかが重要です。この記事では、ウェブページのレンダリング方法として知られる4つの主要な技術、CSR(クライアントサイドレンダリング)、SSR(サーバーサイドレンダリング)、SSG(静的サイトジェネレーション)、ISR(インクリメンタル静的再生成)について、初心者にもわかるように簡単に説明します。


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

クライアントサイドレンダリングは、ウェブページの内容をユーザーのブラウザで作成する方法です。ウェブページを開くと、まず基本的な構造だけが表示され、必要なデータや内容が後からブラウザに送られて表示されます。

  • 仕組み:クライアント側(ブラウザ)でJavaScriptを使ってコンテンツをレンダリング
  • メリット:初期ロードは遅いが、その後のページ遷移が速い
  • デメリット:SEOには不利な場合がある
  • :YouTubeやFacebookのようなサイトでは、新しい情報がすぐに表示されます。

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

サーバーサイドレンダリングは、ユーザーがページをリクエストしたときに、サーバー側でそのリクエストに基づいてリアルタイムでHTMLを生成し、ブラウザに送信します。つまり、ページがリクエストされるたびに、その都度最新のデータを使ってサーバーがHTMLを作ります。

  • 仕組み:ユーザーがページを開くと、サーバーがその時点での最新情報を基にHTMLを生成し、それをユーザーに送ります。
  • メリット:最新のデータが表示され、SEOに有利。
  • デメリット:サーバーに負荷がかかることがある。
  • :ニュースサイトやブログでは、ページを開くとすぐに全ての内容が見られます。

SSG (静的サイトジェネレーション)

静的サイトジェネレーションは、あらかじめ決められた時点で、静的なHTMLファイルを生成しておく方法です。ビルド(生成)時に一度だけHTMLを作成し、その後ユーザーがアクセスしたときにはその静的なHTMLファイルをそのまま表示します。ページの内容が頻繁に変わらない場合に適しています。

  • 仕組み:ウェブサイトのビルド時に、あらかじめ決められた内容でHTMLファイルを生成し、それをサーバーに置いておきます。ユーザーがアクセスする時には、既に生成されている静的なHTMLファイルをそのまま表示します。
  • メリット:非常に高速で、サーバーの負荷が低い。
  • デメリット:ページの内容を頻繁に更新する場合には不向き。
  • :会社のホームページやポートフォリオサイトなど、内容が固定されているサイトです。

ISR (インクリメンタル静的再生成)

インクリメンタル静的再生成は、静的サイトジェネレーションとサーバーサイドレンダリングの良いところを組み合わせた方法です。ページはあらかじめ作成されますが、新しいデータが必要な時には、最新の情報でページを更新します。

  • 仕組み:SSGとSSRのハイブリッド
  • メリット:静的ページを定期的または必要に応じて再生成
  • デメリット:設定や運用がやや複雑
  • :オンラインショップのように、時々内容が更新されるけれども、全てのページがいつも最新である必要がないサイトです。

これらの技術を理解することで、ウェブサイトやアプリケーションをどのように最適化するかを考える手助けになります。簡単にまとめると、CSRはブラウザでページを作り、SSRはサーバーでページを作り、SSGはあらかじめページを作り、ISRは必要に応じてページを更新します。それぞれの方法にはメリットとデメリットがありますので、使う場面に応じて選びましょう。

Discussion