Web Server & WAS

Web Server

HTTP ํ”„๋กœํ† ์ฝœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋ผ์ด์–ธํŠธ(์›น ๋ธŒ๋ผ์šฐ์ €, ์›น ํฌ๋กค๋Ÿฌ)์˜ ์š”์ฒญ์„ ์„œ๋น„์Šคํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„ Ex) Apache Server, Nginx, IIS ๋“ฑ

Web Server๋Š” ํ•˜๋“œ์›จ์–ด์™€ ์†Œํ”„ํŠธ์›จ์–ด๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.

  • ํ•˜๋“œ์›จ์–ด โ†’ Web Server๊ฐ€ ์„ค์น˜๋˜์–ด์žˆ๋Š” ์ปดํ“จํ„ฐ

  • ์†Œํ”„ํŠธ์›จ์–ด โ†’ ์›น ๋ธŒ๋ผ์šฐ์ €(ํด๋ผ์ด์–ธํŠธ)๋กœ๋ถ€ํ„ฐ HTTP ์š”์ฒญ์„ ๋ฐ›์•„ ์ •์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ

๊ธฐ๋Šฅ

ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ๋”ฐ๋ผ ์•„๋ž˜์˜ ๋‘ ๊ฐ€์ง€ ๊ธฐ๋Šฅ ์ค‘ ์ ์ ˆํ•˜๊ฒŒ ์„ ํƒํ•ด ์ˆ˜ํ–‰ํ•œ๋‹ค.

  1. ์ •์ ์ธ ์ปจํ…์ธ  ์ œ๊ณต โ†’ WAS๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ์ž์›์„ ์ œ๊ณตํ•œ๋‹ค.

  2. ๋™์ ์ธ ์ปจํ…์ธ  ์ œ๊ณต์„ ์œ„ํ•œ ์š”์ฒญ ์ „๋‹ฌ โ†’ ํด๋ผ์ด์–ธํŠธ์— ์š”์ฒญ์„ WAS์— ๋ณด๋‚ด๊ณ , WAS๊ฐ€ ์ฒ˜๋ฆฌํ•œ ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.

WAS (Web Application Server)

DB์กฐํšŒ๋‚˜ ๋‹ค์–‘ํ•œ ๋กœ์ง ์ฒ˜๋ฆฌ๋ฅผ ์š”๊ตฌํ•˜๋Š” ๋™์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ Application Server โ†’ WAS = Web Server + Web Container Ex) Tomcat, JBoss, Jeus, Web Sphere ๋“ฑ

  • HTTP๋ฅผ ํ†ตํ•ด ์ปดํ“จํ„ฐ๋‚˜ ์žฅ์น˜์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ˆ˜ํ–‰ํ•ด์ฃผ๋Š” ๋ฏธ๋“ค์›จ์–ด(์†Œํ”„ํŠธ์›จ์–ด ์—”์ง„)์ด๋‹ค.

  • โ€œ์›น ์ปจํ…Œ์ด๋„ˆ(Web Container)โ€ ํ˜น์€ โ€œ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ(Servlet Container)โ€๋ผ๊ณ ๋„ ๋ถˆ๋ฆฐ๋‹ค.

  • Container๋ž€ JSP, Servlet์„ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๋งํ•œ๋‹ค. ์ฆ‰, WAS๋Š” JSP, Servlet ๊ตฌ๋™ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•œ๋‹ค.

  • ํ˜„์žฌ๋Š”WAS๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” Web Server๋„ ์ •์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ์„ฑ๋Šฅ์ƒ ํฐ ์ฐจ์ด๊ฐ€ ์—†๋‹ค.

๊ธฐ๋Šฅ

  • ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ํ™˜๊ฒฝ๊ณผ DB ์ ‘์† ๊ธฐ๋Šฅ ์ œ๊ณต

  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŠธ๋žœ์ ์…˜(๋…ผ๋ฆฌ์  ์ž‘์—… ๋‹จ์œ„)๊ด€๋ฆฌ ๊ธฐ๋Šฅ

  • ์—…๋ฌด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ˆ˜ํ–‰

Web Server์™€ WAS๋ฅผ ๊ตฌ๋ถ„ํ•˜๋Š” ์ด์œ 

  • Web Server๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  โ†’ Web Server์—๋Š” ์ •์ ์ธ ์ปจํ…์ธ ๋งŒ ์ฒ˜๋ฆฌํ•˜๋„๋ก ๊ธฐ๋Šฅ์„ ๋ถ„๋ฐฐํ•˜์—ฌ ์„œ๋ฒ„์˜ ๋ถ€๋‹ด์„ ์ค„์ž„

  • WAS๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  โ†’ ์š”์ฒญ์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋ฅผ DB์—์„œ ๊ฐ€์ ธ์™€์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ๋งž๊ฒŒ ๊ทธ๋•Œ ๊ทธ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด์„œ ์ œ๊ณตํ•จ์œผ๋กœ์จ ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด WAS๊ฐ€ Web Server์˜ ๊ธฐ๋Šฅ ๋ชจ๋‘ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋˜์ง€ ์•Š์„๊นŒ?

์ž์› ์ด์šฉ์˜ ํšจ์œจ์„ฑ ๋ฐ ์žฅ์•  ๊ทน๋ณต, ๋ฐฐํฌ ๋ฐ ์œ ์ง€๋ณด์ˆ˜์˜ ํŽธ์˜์„ฑ์„ ์œ„ํ•ด ๋ถ„๋ฆฌ

  1. ๊ธฐ๋Šฅ์„ ๋ถ„๋ฆฌํ•˜์—ฌ ์„œ๋ฒ„ ๋ถ€ํ•˜ ๋ฐฉ์ง€ โ†’ ์ •์  ์ปจํ…์ธ (Web Server), ๋™์  ์ปจํ…์ธ (WAS)๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์ฒ˜๋ฆฌ ์ˆ˜ํ–‰ ์†๋„ ์ฆ๊ฐ€์‹œํ‚จ๋‹ค.

  2. ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ณด์•ˆ ๊ฐ•ํ™” โ†’ SSL์— ๋Œ€ํ•œ ์•”๋ณตํ˜ธํ™” ์ฒ˜๋ฆฌ์— Web Server ์‚ฌ์šฉ

  3. ์—ฌ๋Ÿฌ ๋Œ€์˜ WAS๋ฅผ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅ โ†’ Load Balancing์„ ์œ„ํ•ด์„œ Web Server ์‚ฌ์šฉ

  4. fail over(์žฅ์•  ๊ทน๋ณต), fail back ์ฒ˜๋ฆฌ์— ์œ ๋ฆฌ โ†’ ๋Œ€์šฉ๋Ÿ‰ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ(์—ฌ๋Ÿฌ๊ฐœ์˜ ์„œ๋ฒ„ ์‚ฌ์šฉ) Web Server์™€ WAS๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฌด์ค‘๋‹จ ์šด์˜์„ ์œ„ํ•œ ์žฅ์•  ๊ทน๋ณต์— ์‰ฝ๊ฒŒ ๋Œ€์‘ ๊ฐ€๋Šฅ,

    ์•ž ๋‹จ์˜ Web Server์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ WAS๋ฅผ ์ด์šฉํ•˜์ง€ ๋ชปํ•˜๋„๋ก ํ•œ ํ›„ WAS๋ฅผ ์žฌ์‹œ์ž‘ํ•จ์œผ๋กœ์จ ์‚ฌ์šฉ์ž๋Š” ์˜ค๋ฅ˜๋ฅผ ๋Š๋ผ์ง€ ๋ชปํ•˜๊ณ  ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

Web Server๋ฅผ WAS ์•ž์— ๋‘๊ณ  ํ•„์š”ํ•œ WAS๋“ค์„ Web Server์— ํ”Œ๋Ÿฌ๊ทธ์ธ ํ˜•ํƒœ๋กœ ์„ค์ •ํ•˜๋ฉด ๋”์šฑ ํšจ์œจ์ ์ธ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

[Web] Web Server์™€ WAS์˜ ์ฐจ์ด์™€ ์›น ์„œ๋น„์Šค ๊ตฌ์กฐ - Heee's Development Blog

Last updated