Web

CSR vs SSR vs SSG (+SEO)

์™•๊ฐ€๐Ÿ‘ 2023. 8. 6. 14:31
728x90
๋ฐ˜์‘ํ˜•

CSR (Client Side Rendering)

๋ง ๊ทธ๋ž˜๋„ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ Œ๋”๋ง์ด ์ผ์–ด๋‚˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ํ•˜๊ณ , ์„œ๋ฒ„๊ฐ€ ์‘๋‹ต์„ HTML๊ณผ JS๋ฅผ ๋ณด๋‚ด๊ฒŒ ๋˜๋ฉด

ํด๋ผ์ด์–ธํŠธ๋Š” ์ด์ œ ๋ Œ๋”๋ง์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

dev-tool์—์„œ ๋„คํŠธ์›Œํฌ๋ฅผ ๋ณด๋ฉด ์‚ฌ์ง„๊ณผ ๊ฐ™์ด HTML์ด๋‚˜ JS ์ด๋ฏธ์ง€ ๋“ฑ์„ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

SSR (Sever Side Rendering)

CSR๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด๋ฆ„์—์„œ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋“ฏ์ด ์„œ๋ฒ„์—์„œ ๋ Œ๋”๋ง ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ํ•˜๊ณ , CSR๊ณผ ๋‹ค๋ฅด๊ฒŒ ์„œ๋ฒ„ ์ชฝ์—์„œ ์ด๋ฏธ HTML, JS ๋“ฑ์„ ๋งŒ๋“ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์™„๋ฃŒํ•˜๊ฒŒ ๋˜๋ฉด ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌํ•˜๊ฒŒ ๋˜๊ณ , ํด๋ผ์ด์–ธํŠธ๋Š” ํ™”๋ฉด์„ ๊ทธ๋ฆด ํ•„์š” ์—†์ด ๋ฐ”๋กœ ๋ฟŒ๋ ค์ฃผ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๋ Œ๋”๋ง์„ ์„œ๋ฒ„์—์„œ ํ•œ๋‹ค๊ธฐ๋ณด๋‹ค๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์„œ๋ฒ„์—์„œ ์ž‘์—…ํ•œ ๋’ค, ํด๋ผ์ด์–ธํŠธ๋Š” ๋ฐ”๋กœ ๊ทธ๋ฆฌ๊ธฐ๋งŒ ํ•ด์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํด๋ผ์ด์–ธํŠธ๊ฐ€ JS๋ฅผ ๋ฐ›๊ณ  ์‹คํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

 

 


 

 

CSR vs SSR

๋‘˜์˜ ์ฐจ์ด์ ์„ ๋น„๊ตํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์œผ๋กœ SEO์™€ ์†๋„๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 


 

 

CSR์˜ ๊ฒฝ์šฐ,

  • JSํŒŒ์ผ๊ณผ HTML์„ ์ „๋ถ€ ๋ถˆ๋Ÿฌ์™€์„œ ๊ทธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ์ฒซ ํŽ˜์ด์ง€์˜ ๋กœ๋”ฉ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŽ˜์ด์ง€ ์ „ํ™˜ ์‹œ์— ๊ทธ๋ ค์ง€๋Š” ํŽ˜์ด์ง€๋“ค์€ ์ด๋ฏธ ๋‹ค ๋ฐ›์•„์™”๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅด๊ณ , ํ™”๋ฉด ๊นœ๋นก์ด๋Š” ํ˜„์ƒ์ด ์—†์Šต๋‹ˆ๋‹ค. (์บ์‹ฑ)
  • SEO์— ์ ํ•ฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. CSR์€ ์ „๋ฐ˜์ ์œผ๋กœ ๋ฐ›์•„์™€์„œ ๊ทธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ๋™์ ์œผ๋กœ ์ƒ์„ฑ๋˜๊ณ (API ํฌํ•จ),
    ํฌ๋กค๋ง์— ์žˆ์–ด JS๊ฐ€ ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ–ˆ๋Š”๋ฐ, CSR์€ JS์˜ ์‹คํ–‰์— ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ํ•˜์ง€๋งŒ, ์›๋ž˜๋Š” ํฌ๋กค๋Ÿฌ๊ฐ€ JS๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์•„์„œ ๋งŽ์ด ๋ถˆ๋ฆฌํ•œ ๊ฑฐ ๊ฐ™์€๋ฐ, ๊ตฌ๊ธ€๋ด‡ ํฌ๋กค๋Ÿฌ๊ฐ€ ES5+JS๋ฅผ ์ง€์›ํ•ด์„œ ๋งŽ์ด ๊ดœ์ฐฎ์•„์ง„ ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. (๋˜๋Š” ๋ฉ”ํƒ€ ํƒœ๊ทธ ํ™œ์šฉ)

 

 


 

 

SSR์˜ ๊ฒฝ์šฐ,

  • ์„œ๋ฒ„์—์„œ ํ•„์š”ํ•œ ๋ถ€๋ถ„์˜ HTML๊ณผ JS๋ฅผ ๊ทธ๋ ค๋†จ๊ธฐ ๋•Œ๋ฌธ์— ์ฒซ ํŽ˜์ด์ง€ ๋กœ๋”ฉ์€ ๋น ๋ฆ…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŽ˜์ด์ง€ ์ „ํ™˜ ๋  ๋•Œ๋งˆ๋‹ค ์†Œ์Šค๋ฅผ ๋ฐ›์•„์™€ ๊ทธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ํŽ˜์ด์ง€ ์ด๋™์‹œ์—๋Š” ๋Š๋ฆฝ๋‹ˆ๋‹ค.
  • SEO์— ์ตœ์ ํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„์—์„œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ์ปดํŒŒ์ผ ํ›„, HTML์ด ํด๋ผ์ด์–ธํŠธ๋กœ ์ „์†ก๋˜๊ธฐ ๋•Œ๋ฌธ์— ํฌ๋กค๋Ÿฌ๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋งŒ ์ฝ์œผ๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฒ€์ƒ‰์—”์ง„์— ์ตœ์ ํ™”๋˜์–ด ์žˆ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ฐ„๋‹จํžˆ CSR๊ณผ SSR์€ ์„œ๋กœ ๋ฐ˜๋Œ€์˜ ์žฅ๋‹ด์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

SEO (Search Engine Optimiztion)
SEO๋Š” ๊ฒ€์ƒ‰ํ•˜๋Š” ๋ฐ ์žˆ์–ด ์ตœ์ ํ™”๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.;
๊ฐ„๋‹จํžˆ ๊ฒ€์ƒ‰์—”์ง„(๊ตฌ๊ธ€, ๋„ค์ด๋ฒ„ ๋“ฑ)์—์„œ ๊ฒ€์ƒ‰ํ–ˆ์„ ๋•Œ, ๊ฐœ๋ฐœํ•œ ํ™ˆํŽ˜์ด์ง€๊ฐ€ ๊ฒ€์ƒ‰ํ–ˆ์„ ๋•Œ, ์ž˜ ๋‚˜์˜ค๋ƒ ์•ˆ ๋‚˜์˜ค๋ƒ๋กœ ๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.
ํฌ๋กค๋Ÿฌ๊ฐ€ ์ž๋ฃŒ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ , ์ˆœ์œ„๋ฅผ ๋งค๊ฒจ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์˜ ์ƒ์œ„์— ์˜ฌ๋ผ์˜ค๋ƒ, ํ•˜์œ„์— ์˜ฌ๋ผ์˜ค๋ƒ์ž…๋‹ˆ๋‹ค.

 

 


 

 

SSG (Static Site Generation)

SSG๋Š” SSR์ฒ˜๋Ÿผ ์„œ๋ฒ„์—์„œ HTML์„ ์™„์„ฑํ•ด์„œ ๋ฐ›์•„์˜ค์ง€๋งŒ, ๋นŒ๋“œํƒ€์ž„์ด ๋‹ค๋ฅด๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๋นŒ๋“œํ•  ๋•Œ, ๊ฐ ํŽ˜์ด์ง€์˜ HTML์„ ์ƒ์„ฑํ•˜๊ณ , ํ•ด๋‹น ํŽ˜์ด์ง€ ์š”์ฒญ์ด ์˜ฌ ๊ฒฝ์šฐ์— ์ด๋ฏธ ์ƒ์„ฑํ•œ HTML์„ ๋ฐ˜ํ™˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

์„œ๋ฒ„์—์„œ ํŽ˜์ด์ง€๋ฅผ ๊ณ„์†ํ•ด์„œ ์žฌ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋นŒ๋“œ์—์„œ ๋งŒ๋“ค์–ด๋‚ธ HTML์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

(๋Œ€ํ‘œ์ ์œผ๋กœ Next.js๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.)

 

  • ์ƒ์„ฑ์ด ์™„๋ฃŒ๋œ HTML๋ฌธ์„œ๋ฅผ ์žฌํ™œ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‘๋‹ต์†๋„๊ฐ€ ๋น ๋ฆ…๋‹ˆ๋‹ค.
  • SEO์— ์นœํ™”์ ์ž…๋‹ˆ๋‹ค.
  • ํ•˜์ง€๋งŒ ํŽ˜์ด์ง€๋ฅผ ๋นŒ๋“œํ–ˆ์„ ๋•Œ ๋งŒ๋“ค์–ด ๋‚ด๊ธฐ ๋•Œ๋ฌธ์—, ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ๋‹ค์‹œ ๋นŒ๋“œ๋ฅผ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

์ด๋กœ ์ธํ•ด Next.js๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด CSR๊ณผ SSR์˜ ์žฅ์ ์„ ์‚ด๋ ค ์ข‹์€ ํ™˜๊ฒฝ์„ ์ด๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. (๋ฌผ๋ก  ๋‹จ์ ๋„ ์žˆ์ง€๋งŒ)

 

๋‚˜์ค‘์— Next.js๊ด€๋ จ๋œ ๊ธ€์„ ์ž‘์„ฑํ•  ๋•Œ ์–˜๊ธฐ ๋‚˜์˜ค๊ฒ ์ง€๋งŒ,

SSG์˜ ํŠน์ง•์ธ ๋นŒ๋“ฏ์ด ์ •์ ์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ์ ๊ณผ SSR์˜ ํŠน์ง•์ธ ์„œ๋ฒ„์—์„œ HTML์„ ๊ทธ๋ฆฌ๋Š” ๋ฐฉ๋ฒ• ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

728x90

'Web' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Token] JWT (JSON Web Token)  (0) 2023.07.27
Token] Token๋ž€? ์ •์˜  (0) 2023.07.23
Session์ด๋ž€?  (0) 2023.07.20
Cookie] ์‚ฌ์šฉํ•˜๋Š” ์ด์œ   (0) 2023.07.16
Cookie] ์ •์˜  (0) 2023.07.15