📝

CSR, SSR, SSG の基礎を学ぶ

2024/01/08に公開

投稿の目的

最近、レンダリング技術であるCSR, SSR, SSGについて勉強したので備忘録としてまとめます。
周りのエンジニアの方にも教えていただきながらまとめましたが、理解が追いつかなかった部分もあると思います。誤りがあれば、是非ご指摘いただきたいです。

始める前にSPAについて触れる。

SPAは最初のリクエストでサーバーから受け取った一つのファイルでルーティングを行うアプリケーションのことを指します。
SPACSR, SSR, SSGと比較する記事を見かけることがありますが、厳密には比較することはできません。

CSR(Client Side Rendering)

  • 1.:クライアントからWEBサーバーへリクエストが届く。
  • 2.:WEBサーバーからクライアントへ、そのページを表示させるためのファイルが送られる。
  • 3.:2回目以降のリクエストは、クライアント上に存在するファイルが行う。リクエストはAPIサーバーへ届く。
  • 4.:APIサーバーからクライアントへデータが返される。APIサーバーから取得したデータをもとに、ページコンテンツが生成される。

SSR(Server Side Rendering)

  • 1.:クライアントからWEBサーバーへリクエストが届く。
  • 2.:WEBサーバーは、クライアントからのリクエストを元に、ページコンテンツ生成に必要なデータをAPIサーバーへリクエストする。
  • 3.:APIサーバーは要求されたデータをWEBサーバーに返す。
  • 4.:生成されたファイルをクライアントに返す。
  • 5.:2回目以降のリクエストは、クライアント上に存在するファイルが行う。リクエストはAPIサーバーへ届く。
  • 6.:APIサーバーからクライアントへデータが返される。APIサーバーから取得したデータをもとに、ページコンテンツが生成される。

SSG(Static Site Generation)

  • 1.:ローカルからAPIサーバーへリクエストが届く。
  • 2.:APIサーバーは要求されたデータをローカルに返す。
  • 3.:クライアントからWEBサーバーへリクエストが届く。
  • 4.:WEBサーバーからクライアントへ、そのページを表示させるための全てのファイルが送られる。
  • 5.:2回目以降のリクエストは、クライアント上に存在するファイルが行う。リクエストはAPIサーバーへ届く。
  • 6.:APIサーバーからクライアントへデータが返される。APIサーバーから取得したデータをもとに、ページコンテンツが生成される。

Discussion