์Šคํ”„๋ง

[์Šคํ”„๋ง] ์›น์„œ๋ฒ„, WAS, ์„œ๋ธ”๋ฆฟ / SSR, CSR

HHRR 2024. 1. 14. 00:12
์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•ด ํ—ท๊ฐˆ๋ ธ๋˜ ๊ฐœ๋…๋“ค ์œ„์ฃผ๋กœ ์ •๋ฆฌํ•ด๋ณด๋ ค ํ•œ๋‹ค.

์›น์„œ๋ฒ„ vs WAS

  • ๋‘˜ ๋‹ค HTTP ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.
  • ์›น์„œ๋ฒ„๋Š” ์ •์  ๋ฆฌ์†Œ์Šค ์ œ๊ณตํ•œ๋‹ค. 
    • NGINX, APACHE๊ฐ€ ์žˆ์Œ
  • WAS๋Š” ์›น์„œ๋ฒ„ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋ฉด์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
    • ์„œ๋ธ”๋ฆฟ, JSP MVC๋“ฑ
    • ํ†ฐ์บฃ, Jetty, Undertow๊ฐ€ ์žˆ์Œ

์›น ์‹œ์Šคํ…œ ๊ตฌ์„ฑ

  • WAS๋ž‘ DB๋งŒ์œผ๋กœ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์ด ๊ฐ€๋Šฅํ•œ๋ฐ, ์ด๋ ‡๊ฒŒ๋˜๋ฉด WAS๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์€ ์—ญํ• ์„ ๋‹ด๋‹นํ•ด์„œ ์„œ๋ฒ„ ๊ณผ๋ถ€ํ•˜๊ฐ€ ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ ์œ„ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ์ •์  ๋ฆฌ์†Œ์Šค๋Š” ์›น์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•˜๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง๊ณผ ๊ฐ™์€ ๋™์  ์ฒ˜๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋ฉด WAS์— ์š”์ฒญ์„ ์œ„์ž„ํ•œ๋‹ค.
  • ํ•„์š”์— ๋”ฐ๋ผ ์›น์„œ๋ฒ„๋ž‘ WAS์„œ๋ฒ„๋ฅผ ๊ฐ๊ฐ ์ฆ์„คํ•  ์ˆ˜ ์žˆ์–ด์„œ ํšจ์œจ์ ์œผ๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค!

์„œ๋ธ”๋ฆฟ

HTTP ์š”์ฒญ์ด ์˜ค๋ฉด WAS๊ฐ€ ์š”์ฒญ, ์‘๋‹ต ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์„œ ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๊ฐœ๋ฐœ์ž๋Š” ๊ฐ ๊ฐ์ฒด๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ๊บผ๋‚ด์„œ ์“ฐ๋ฉด ๋œ๋‹ค. -> HTTP ์ŠคํŽ™์„ ๋งค์šฐ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ๋จ!

  • ํ†ฐ์บฃ์ฒ˜๋Ÿผ ์„œ๋ธ”๋ฆฟ์„ ์ง€์›ํ•˜๋Š” WAS๋ฅผ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋ผ๊ณ  ํ•œ๋‹ค.
  • ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์„œ๋ธŒ๋ฆฟ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ, ์ดˆ๊ธฐํ™”, ํ˜ธ์ถœ, ์ข…๋ฃŒํ•˜๋Š” ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ด€๋ฆฌํ•ด์ค€๋‹ค.
  • ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด๋Š” ์‹ฑ๊ธ€ํ†ค์œผ๋กœ ๊ด€๋ฆฌ๋œ๋‹ค
    • ๋ชจ๋“  ๊ณ ๊ฐ ์š”์ฒญ์€ ๋™์ผํ•œ ์„œ๋ธ”๋ฆฟ ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค์— ์ ‘๊ทผ
    • ๊ณต์œ ๋ณ€์ˆ˜ ์‚ฌ์šฉ ์ฃผ์˜
  • WAS๋Š” ๋™์‹œ ์š”์ฒญ์„ ์œ„ํ•œ ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›ํ•œ๋‹ค.
    • ์“ฐ๋ ˆ๋“œํ’€์„ ์ด์šฉํ•˜๋ฉด ํšจ์œจ์ ์œผ๋กœ ์“ฐ๋ ˆ๋“œ ์ตœ๋Œ€์น˜ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค
    • ํ†ฐ์บฃ์€ ์ตœ๋Œ€ 200๊ฐœ ๊ธฐ๋ณธ ์„ค์ • 
    • WAS์˜ ์ฃผ์š” ํŠœ๋‹ ํฌ์ธํŠธ๋Š” ์ตœ๋Œ€ ์“ฐ๋ ˆ๋“œ ์ˆ˜์ด๋‹ค. ์“ฐ๋ ˆ๋“œ ํ’€์˜ ์ ์ • ์ˆซ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์˜ ๋ณต์žก๋„, cpu, ๋ฉ”๋ชจ๋ฆฌ, io ๋ฆฌ์†Œ์Šค ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋ชจ๋‘ ๋‹ค๋ฅด๋‹ค.

SSR(์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง)

HTML ์ตœ์ข… ๊ฒฐ๊ณผ๋ฅผ ์„œ๋ฒ„์—์„œ ๋งŒ๋“ค์–ด์„œ ์›น๋ธŒ๋ผ์šฐ์ €์— ์ „๋‹ฌํ•˜๋Š” ํ˜•์‹์ด๋‹ค.

์ฃผ๋กœ ์ •์ ์ธ ํ™”๋ฉด์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์„œ๋ฒ„์— HTML ์š”์ฒญ๋งŒ ์˜จ๋‹ค.

๊ด€๋ จ ๊ธฐ์ˆ ๋กœ JSP, ํƒ€์ž„๋ฆฌํ”„๊ฐ€ ์žˆ๋‹ค.

CSR(ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง)

HTML ๊ฒฐ๊ณผ๋ฅผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•ด์„œ ์ ์šฉํ•œ๋‹ค.

์ฃผ๋กœ ๋™์ ์ธ ํ™”๋ฉด์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์„œ๋ฒ„์—์„œ 1. HTML, 2. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ, 3. HTTP API ๋ฐ์ดํ„ฐ ์š”์ฒญ์ด ์˜ค๋ฉด ์‘๋‹ต ํ›„์— ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ HTML ๊ฒฐ๊ณผ๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ํ˜•์‹์ด๋‹ค. 

๊ด€๋ จ ๊ธฐ์ˆ ๋กœ React, Vue.js๋“ฑ์ด ์žˆ๋‹ค.

 

๊น€์˜ํ•œ - ์Šคํ”„๋ง MVC 1 - ๋ฐฑ์—”๋“œ ์›น ๊ฐœ๋ฐœ ํ•ต์‹ฌ ๊ธฐ์ˆ  ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.