๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Back-end

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

๋ฐ˜์‘ํ˜•

์›น ์„œ๋ฒ„? ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„?

์›น ์„œ๋ฒ„์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๋ฉด์„œ, ์›น ์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋กœ ๊ตฌ๋ถ„๋œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ฒŒ๋˜์—ˆ๊ณ , ์ž˜ ์ •๋ฆฌ๊ฐ€ ๋œ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฝ๊ณ  ๋‚˜๋ฆ„๋Œ€๋กœ ์ •๋ฆฌ(?)๋ฅผ ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.
์›น ์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„์˜ ์ฐจ์ด์ ์„ ์ •๋ฆฌํ•˜๊ธฐ์— ์•ž์„œ, ์›น ์„œ๋น„์Šค๋Š” ์–ด๋–ค ๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์›น ์„œ๋น„์Šค๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๋Š” ์›น์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๊ฐ€ ๋ฌด์—‡์ธ์ง€๋ฅผ ์ •๋ฆฌํ•ด ๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

์›น ์„œ๋น„์Šค ๊ตฌ์กฐ

  1. Client โ†’ ์›น ์„œ๋ฒ„ โ†’ DB
  2. Client โ†’ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ โ†’ DB
  3. Client โ†’ ์›น ์„œ๋ฒ„ โ†’ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ โ†’ DB

์›น ์„œ๋น„์Šค๋Š” ์œ„์ฒ˜๋Ÿผ ๋‹ค์–‘ํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.

์›น ์„œ๋ฒ„๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜๋„, ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜๋„, ๋‘˜ ๋‹ค ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์›น ์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๊ฐ€ ๊ฐ๊ฐ ์–ด๋–ค ์—ญํ• ์„ ํ•˜๋Š”์ง€ ์ •๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

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

์›น ์„œ๋ฒ„๋Š” HTTP ์š”์ฒญ์„ ๋ฐ›์•„ HTML, CSS, Javascript, Image ๋“ฑ์˜ ์ •์ ์ธ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

๋Œ€ํ‘œ์ ์œผ๋กœ IIS, Apach, Nginx ๋“ฑ์ด ์žˆ๋‹ค.

์ •์ ์ธ ์›น ๋ฆฌ์†Œ์Šค๋“ค์„ ํด๋ผ์ด์–ธํŠธ๋กœ ์ „๋‹ฌํ•˜๊ณ , ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ์ฝ˜ํ…์ธ ๋ฅผ ์ „๋‹ฌ๋ฐ›์•„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌํ•œ๋‹ค.

์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋™์ ์ธ ์š”์ฒญ์ด ๋“ค์–ด์™”์„ ๋•Œ, ํ•ด๋‹น ์š”์ฒญ์„ WAS์—๊ฒŒ ์š”์ฒญํ•œ๋‹ค.

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

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

๋™์  ์„œ๋ฒ„ ์ฝ˜ํ…์ธ ๋ฅผ ์ „๋‹ฌํ•œ๋‹ค๋Š” ๊ฒƒ์œผ๋กœ ์ผ๋ฐ˜ ์›น ์„œ๋ฒ„์™€ ๊ตฌ๋ณ„๋˜๋ฉฐ, ์ฃผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์™€ ๊ฐ™์ด ์„œ๋น„์Šค๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.

๋Œ€ํ‘œ์ ์œผ๋กœ Tomcat, JBoss, Jeus ๋“ฑ์ด ์žˆ๋‹ค.

์›น ์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ์ด์œ 

์›น ์„œ๋ฒ„๋Š” ์ •์ ์ธ ์ปจํ…์ธ ๋ฅผ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋Š” ๋™์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ „๋‹ฌํ•œ๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์ง€๋งŒ, ๊ธฐ๋Šฅ์œผ๋กœ๋งŒ ๋ดค์„ ๋•Œ๋Š” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋‘๊ฐ€์ง€ ์—ญํ• ์„ ๋ชจ๋‘ ํ•  ์ˆ˜ ์žˆ์–ด๋ณด์ธ๋‹ค.

์—ญํ• ์„ ๋ถ„๋ฆฌํ•จ์œผ๋กœ์„œ ๋” ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

๋งŒ์•ฝ WAS๊ฐ€ ์ •์  ์ปจํ…์ธ  ์š”์ฒญ๊นŒ์ง€ ์ฒ˜๋ฆฌํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด, ๋ถ€ํ•˜๊ฐ€ ์ปค์ง€๊ณ  ๋™์  ์ปจํ…์ธ  ์ฒ˜๋ฆฌ๊ฐ€ ์ง€์—ฐ๋˜๋ฉด์„œ ์ˆ˜ํ–‰ ์†๋„๊ฐ€ ๋Š๋ ค์ง€๊ณ  ์ด์— ๋”ฐ๋ผ ํŽ˜์ด์ง€ ๋…ธ์ถœ ์‹œ๊ฐ„์ด ๋Š˜์–ด๋‚˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ํšจ์œจ์„ฑ์ด ํฌ๊ฒŒ ๋–จ์–ด์ง€๊ฒŒ ๋œ๋‹ค.

์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์›น ์„œ๋ฒ„๋ฅผ ์•ž๋‹จ์— ๋‘๊ณ  WAS๋Š” ์›น ์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•˜๊ธฐ ํž˜๋“  ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ์ฝ”๋“œ์˜ ๋กœ์ง๋“ฑ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ์›น์„œ๋ฒ„์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ์–‘์งˆ์˜ ์ปจํ…์ธ ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์ด ๋งŽ์ด ์ ‘์†ํ•˜๋Š” ๋Œ€์šฉ๋Ÿ‰ WAS์ธ ๊ฒฝ์šฐ, ์„œ๋ฒ„์˜ ์ˆ˜๊ฐ€ ์—ฌ๋Ÿฌ ๋Œ€์ธ ๊ฒฝ์šฐ, ์‚ฌ์šฉ ์ค‘์ธ WAS์—์„œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒจ์„œ WAS๋ฅผ ์žฌ์‹œ์ž‘ํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ ์•ž๋‹จ์˜ ์›น์„œ๋ฒ„์—์„œ ํ•ด๋‹น WAS๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์š”์ฒญ์„ ์ฐจ๋‹จํ•œ ํ›„ WAS๋ฅผ ์žฌ์‹œ์ž‘ ํ•œ๋‹ค๋ฉด, ์‚ฌ์šฉ์ž๋“ค์€ WAS์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ์ง€ ๋ชจ๋ฅด๊ณ  ์ด์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด๋Ÿฐ ์ฒ˜๋ฆฌ๋ฅผ ์žฅ์• ๊ทน๋ณต๊ธฐ๋Šฅ์ด๋ผ ํ•œ๋‹ค.

์ฆ‰ ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ์›น์„œ๋ฒ„์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„œ๋ฒ„๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

์ฐธ๊ณ ์ž๋ฃŒ

https://pxd-fed-blog.web.app/webserver-was/

๋ฐ˜์‘ํ˜•

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

ElastAlert  (1) 2024.06.09
Slack์œผ๋กœ OAuth ์‚ฌ์šฉํ•˜๊ธฐ  (0) 2022.10.31
[HTTP] ์‘๋‹ต ์ƒํƒœ ์ฝ”๋“œ ์ •๋ฆฌ  (0) 2021.09.14
[REST API]REST API๋ž€?  (0) 2021.08.29
[WEB] HTTPS์™€ SSL์ธ์ฆ์„œ  (0) 2021.08.29