📝
CSR, SSR, SSG の基礎を学ぶ
投稿の目的
最近、レンダリング技術であるCSR, SSR, SSGについて勉強したので備忘録としてまとめます。
周りのエンジニアの方にも教えていただきながらまとめましたが、理解が追いつかなかった部分もあると思います。誤りがあれば、是非ご指摘いただきたいです。
始める前にSPAについて触れる。
SPAは最初のリクエストでサーバーから受け取った一つのファイルでルーティングを行うアプリケーションのことを指します。
SPAをCSR, 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