[LG U+ ์œ ๋ ˆ์นด 3๊ธฐ]Web Server vs WAS ๊ด€๋ จ ์ •๋ฆฌ

2025. 10. 29. 15:54ใ†Java/JSP

๐Ÿงฉ [Web Server vs Web Application Server, Static Content vs Dynamic Content ์™„๋ฒฝ ์ •๋ฆฌ]

1๏ธโƒฃ Web Server vs Web Application Server

Web Server (์›น ์„œ๋ฒ„)

์ •์  ์ฝ˜ํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ HTML, CSS, JS, ์ด๋ฏธ์ง€ ๊ฐ™์€ ํŒŒ์ผ๋“ค์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๊ทธ๋Œ€๋กœ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: Apache HTTP Server, Nginx

Web Application Server (WAS, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„)

๋™์  ์ฝ˜ํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ์„œ๋ฒ„์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ๋™์  ์›น ํŽ˜์ด์ง€ ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: Tomcat, Jetty
๊ตฌ๋ถ„ Web Server Web Application Server
์ฒ˜๋ฆฌ ๋ฐฉ์‹ ์ •์  ํŒŒ์ผ ์ „๋‹ฌ ๋™์  ์ฝ˜ํ…์ธ  ์ƒ์„ฑ
์˜ˆ์‹œ Apache, Nginx Tomcat, Jetty
์—ญํ•  ์ •์  ๋ฆฌ์†Œ์Šค ์ œ๊ณต ์„œ๋ฒ„ ๋กœ์ง ์‹คํ–‰, DB ์—ฐ๋™ ๋“ฑ

2๏ธโƒฃ Static Content vs Dynamic Content

Static Content (์ •์  ์ฝ˜ํ…์ธ )

์„œ๋ฒ„๊ฐ€ ๋งค๋ฒˆ ๋™์ผํ•œ  ํŒŒ์ผ์„ ๊ทธ๋Œ€๋กœ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” ์ฝ˜ํ…์ธ ์ž…๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: HTML, CSS, ์ด๋ฏธ์ง€
  • ์„œ๋ฒ„: Web Server
  • ์žฅ์ : ๋น ๋ฅด๊ณ  ํšจ์œจ์ 
  • ๋‹จ์ : ์š”์ฒญ๋งˆ๋‹ค ๋ณ€ํ™” ์—†์Œ

Dynamic Content (๋™์  ์ฝ˜ํ…์ธ )

์„œ๋ฒ„์—์„œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ์ฝ˜ํ…์ธ  ์ž…๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: JSP, Servlet, DB ์—ฐ๋™ ํŽ˜์ด์ง€
  • ์„œ๋ฒ„: Web Application Server (WAS)
  • ์žฅ์ : ์‚ฌ์šฉ์ž ๋งž์ถคํ˜• ์ฝ˜ํ…์ธ  ์ œ๊ณต
  • ๋‹จ์ : ์„œ๋ฒ„ ์ž์› ์†Œ๋ชจ ๋งŽ๊ณ  ์ฒ˜๋ฆฌ ์†๋„ ๋А๋ฆผ

โธ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ๋ถ€ํ„ฐ ์‘๋‹ต๊นŒ์ง€์˜ ์ „์ฒด ํ๋ฆ„

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์š”์ฒญ์ด ์ฒ˜๋ฆฌ๋˜๋Š” ์ „์ฒด ๊ณผ์ •์€ Web Server์™€ WAS(Web Application Server)๊ฐ€ ํ˜‘๋ ฅํ•˜์—ฌ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. Servlet๊ณผ JSP ๋ชจ๋‘ WAS ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋˜๋ฉฐ, Web Server๋Š” ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๋™์  ์š”์ฒญ์„ WAS๋กœ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ํ๋ฆ„ ๋‹จ๊ณ„๋ณ„ ์„ค๋ช…:

  1. ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ
    ์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด http://localhost:8080/books/detail ๊ฐ™์€ URL์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
  2. Web Server
    Apache๋‚˜ Nginx ๊ฐ™์€ ์›น ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ •์  ํŒŒ์ผ(HTML, CSS, JS ๋“ฑ)์€ ์ง์ ‘ ์‘๋‹ตํ•˜๊ณ , ๋™์  ์š”์ฒญ(Servlet, JSP ๋“ฑ)์€ WAS๋กœ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.
  3. WAS (Web Application Server)
    Tomcat ๊ฐ™์€ WAS๊ฐ€ ์š”์ฒญ์„ ๋ฐ›์•„ ๋‚ด๋ถ€์˜ Servlet Container์—์„œ ํ•ด๋‹น ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  4. Servlet ์‹คํ–‰
    ์š”์ฒญ URL ๋งคํ•‘์— ๋งž๋Š” @WebServlet ํด๋ž˜์Šค๊ฐ€ ์‹คํ–‰๋˜์–ด ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
    ์˜ˆ: DB ์กฐํšŒ, ์—ฐ์‚ฐ ์ˆ˜ํ–‰, Model ๋ฐ์ดํ„ฐ ์ƒ์„ฑ
  5. JSP(View) ํ˜ธ์ถœ
    Servlet์—์„œ ์ฒ˜๋ฆฌ๋œ ๋ฐ์ดํ„ฐ๋ฅผ JSP๋กœ ์ „๋‹ฌํ•˜์—ฌ HTML ํ˜•ํƒœ๋กœ ๋™์  ํŽ˜์ด์ง€๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
    (JSP๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ Servlet์œผ๋กœ ๋ณ€ํ™˜๋˜์–ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.)
  6. ์‘๋‹ต ๋ฐ˜ํ™˜
    ์ƒ์„ฑ๋œ HTML์ด Web Server๋ฅผ ๊ฑฐ์ณ ํด๋ผ์ด์–ธํŠธ(๋ธŒ๋ผ์šฐ์ €)๋กœ ์ „๋‹ฌ๋˜์–ด ํ™”๋ฉด์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์ „์ฒด ํ๋ฆ„ ์š”์•ฝ:

ํด๋ผ์ด์–ธํŠธ → Web ServerWAS(Servlet Container)ServletJSP(View) → ํด๋ผ์ด์–ธํŠธ

์ด ๊ณผ์ •์„ ํ†ตํ•ด ์ •์  ์š”์ฒญ์€ Web Server์—์„œ ๋ฐ”๋กœ ์ฒ˜๋ฆฌ๋˜๊ณ , ๋™์  ์š”์ฒญ์€ WAS ๋‚ด๋ถ€์˜ Servlet๊ณผ JSP๊ฐ€ ํ˜‘๋ ฅํ•˜์—ฌ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, Servlet์€ ์š”์ฒญ์„ ์ œ์–ดํ•˜๊ณ , JSP๋Š” ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋ฉฐ, WAS๋Š” ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค.

๊ตฌ๋ถ„ Static Content Dynamic Content
์ฒ˜๋ฆฌ ์„œ๋ฒ„ Web Server Web Application Server
์˜ˆ์‹œ HTML, CSS, ์ด๋ฏธ์ง€ JSP, Servlet, DB ์—ฐ๋™
ํŠน์ง• ํŒŒ์ผ ๊ทธ๋Œ€๋กœ ์ œ๊ณต ์„œ๋ฒ„์—์„œ ์‹คํ–‰ ํ›„ HTML ์‘๋‹ต
์†๋„ ๋น ๋ฆ„ ์ƒ๋Œ€์ ์œผ๋กœ ๋А๋ฆผ

 

---

ํ•ต์‹ฌ ์š”์•ฝ

Web Server๋Š” ์ฃผ๋กœ ์ •์  ํŒŒ์ผ ์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๊ทธ๋Œ€๋กœ ์ „๋‹ฌํ•˜๊ณ , Web Application Server๋Š” ๋™์  ์ฝ˜ํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Static Content๋Š” ๋ณ€ํ•˜์ง€ ์•Š๋Š” ํŒŒ์ผ์„ ๊ทธ๋Œ€๋กœ ์ œ๊ณตํ•˜๋ฉฐ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ด๊ณ , Dynamic Content๋Š” ์„œ๋ฒ„์—์„œ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉ์ž ๋งž์ถคํ˜• ์‘๋‹ต์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.