jiisoo
์ง€์ˆ˜๋กœ๊ทธ
jiisoo
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • home
  • Github
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ์ €์žฅ์†Œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (80)
    • Java (1)
    • Spring (30)
    • JPA (15)
    • cs (8)
      • ๋””์ž์ธํŒจํ„ด (1)
      • ๋„คํŠธ์›Œํฌ (5)
      • Database (1)
      • ์šด์˜์ฒด์ œ (1)
    • algorithm (18)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ & ์ž๋ฃŒ๊ตฌ์กฐ ์ด๋ก  (12)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด (6)
    • ๋ฉด์ ‘ ์ค€๋น„ (0)
    • ํšŒ๊ณ  (5)
      • ATDD (4)
      • ํ•™์Šตํ…Œ์ŠคํŠธ๋กœ ๋ฐฐ์šฐ๋Š” spring 2๊ธฐ (1)
      • ํ”„๋กœ์ ํŠธ (0)

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํƒœ๊ทธ

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
jiisoo

์ง€์ˆ˜๋กœ๊ทธ

[spring] ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ดํ•ด
Spring

[spring] ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ดํ•ด

2023. 2. 18. 21:55

 

๐ŸŒณ  ์›น ์„œ๋ฒ„, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„  

  • '์›น'์ด๋ผ๋Š” ๊ฒƒ์€ ๋ชจ๋‘ HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ†ต์‹ ์„ ํ•˜๊ฒŒ ๋œ๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด ์›น ๋ธŒ๋ผ์šฐ์ €(ํด๋ผ์ด์–ธํŠธ)์—์„œ Url์„ ์น˜๋ฉด ์ธํ„ฐ๋„ท์„ ํ†ตํ•ด์„œ ์„œ๋ฒ„์— ์ ‘๊ทผํ•˜๊ณ 
  • ์„œ๋ฒ„์—์„œ๋Š” html ์„ ๋งŒ๋“ค์–ด ํด๋ผ์ด์–ธํŠธ์— ๋‚ด๋ ค์ฃผ๊ณ  ์ดํ›„ ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ™”๋ฉด์— ๋„์–ด์ค€๋‹ค.
    • ์ด ๊ณผ์ •์—์„œ์˜ ์š”์ฒญ๊ณผ ์‘๋‹ต์€ HTTP ํ†ต์‹ ์„ ํ†ตํ•ด์„œ ์ด๋ฃจ์–ด์ง„๋‹ค.

 

 

๐ŸŒฟ ์›น ์„œ๋ฒ„ 

  • HTTP ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ์„œ๋ฒ„์ด๋‹ค.
  • ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ , ๊ธฐํƒ€ ๋ถ€๊ฐ€๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.
  • '์ •์  ๋ฆฌ์†Œ์Šค ์ œ๊ณต'์ด๋ž€ 
    • ์šฐ๋ฆฌ๊ฐ€ ํŠน์ • ํด๋”์— html, css, js ๋“ฑ ํŒŒ์ผ์„ ๋‘๋ฉด ์ด ์„œ๋ฒ„๋“ค์ด ๊ทธ ํŒŒ์ผ๋“ค์„ ์„œ๋น™ํ•ด ์ค€๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด HTTP๋กœ 'index.html'์„ ๋‹ฌ๋ผ๊ณ  ์›น ์„œ๋ฒ„์— ์š”์ฒญ์ด ์˜ค๋ฉด http ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
    • ex ) NGINX, APACHE

 

 

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

  • HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.
  • ์›น ์„œ๋ฒ„์˜ ๊ธฐ๋Šฅ์„ ๋Œ€๋ถ€๋ถ„ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. (์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค)

 

 

 

 

๐Ÿค” ๊ทธ๋ ‡๋‹ค๋ฉด ๋‘˜์˜ ์ฐจ์ด๋Š” ๋ฌด์—‡์ผ๊นŒ? 

  • ์›น ์„œ๋ฒ„๋Š” ์ •์ ์ธ ํŒŒ์ผ์„ ๋“ค๊ณ  ์„œ๋น™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํŠน์ • ์‚ฌ์šฉ์ž๋งˆ๋‹ค html์„ ๋‹ค๋ฅด๊ฒŒ ๋ณด์—ฌ์ฃผ๊ฑฐ๋‚˜ ํ•  ์ˆ˜ ์—†๋‹ค.
  • ํ•˜์ง€๋งŒ WAS๋Š” HTTP ์š”์ฒญ์ด ์˜ค๋ฉด ์‚ฌ์šฉ์ž์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ๋™์ ์ธ HTML์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ณ  HTTP API( = REST API)๊ฐ€ WAS๋ฅผ ํ†ตํ•ด์„œ ์ œ๊ณต์ด ๋œ๋‹ค.
  • ์‰ฝ๊ฒŒ ์ •๋ฆฌํ•ด ๋ณด์ž๋ฉด ์›น ์„œ๋ฒ„๋Š” ์ •์  ๋ฆฌ์†Œ์Šค(ํŒŒ์ผ)๋ฅผ ์ œ๊ณตํ•˜๋Š”๋ฐ ๊ทธ์น˜์ง€๋งŒ, WAS๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง๊นŒ์ง€ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

์‹ค๋ฌด์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋ ๊นŒ? 

  • ์ตœ์†Œํ•œ์œผ๋กœ ๋ณด๋ฉด WAS์™€ DB ๋งŒ์œผ๋กœ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์ด ์˜ค๋ฉด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ณ  HTML, CSS, JS ๋„ ์ œ๊ณต์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์—์„œ DB๋ฅผ ์กฐํšŒํ•˜์—ฌ ํ•„์š”ํ•œ HTML์„ ๋™์ ์œผ๋กœ ๋งŒ๋“ค์–ด ๋‚ผ ์ˆ˜๋„ ์žˆ๋‹ค.

 

  • ํ•˜์ง€๋งŒ ์ด๋ ‡๊ฒŒ ๋˜๋ฉด WAS ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์€ ์ผ์„ ๋‹ด๋‹นํ•˜๊ฒŒ ๋˜์–ด ์•„๋ž˜์˜ ๋ฌธ์ œ์ ๋“ค์„ ๊ณ ๋ คํ•ด ๋ณด์•„์•ผ ํ•œ๋‹ค.
    • ์„œ๋ฒ„ ๊ณผ๋ถ€ํ•˜์˜ ์šฐ๋ ค
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋กœ์ง์ด ๋น„์‹ธ๋‹ค.
      • HTML, CSS, JS์™€ ์ด๋ฏธ์ง€ ๊ฐ™์€ ๊ฒƒ๋“ค์€ ๊ฐ’์ด ์‹ธ๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ์ผ์„ ์ž˜ ์ €์žฅํ•ด ๋†“์•˜๋‹ค๊ฐ€ ์ž˜ ์„œ๋น™ํ•˜๋ฉด ๋œ๋‹ค.
      • ํ•˜์ง€๋งŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋กœ์ง์€ ๋‹ค๋ฅธ ์„œ๋ฒ„๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ๋  ์ˆ˜๋„ ์žˆ๊ณ , DB๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ณต์žกํ•˜๋‹ค. (๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด ๋“ค์–ด๊ฐ€๊ธฐ ๋•Œ๋ฌธ)
      • ๋”ฐ๋ผ์„œ ๊ฐ€์žฅ ๋น„์‹ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์ด ์ •์  ๋ฆฌ์†Œ์Šค ๋•Œ๋ฌธ์— ์ˆ˜ํ–‰์ด ์–ด๋ ค์šธ ์ˆ˜ ์žˆ๋‹ค.
    • ์šฐ๋ฆฌ์˜ ์ƒ๊ฐ๋ณด๋‹ค WAS๋Š” ์ž˜ ์ฃฝ๋Š”๋ฐ WAS ์žฅ์•  ์‹œ ์˜ค๋ฅ˜ ํ™”๋ฉด๋„ ๋…ธ์ถœ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

 

  • ๋”ฐ๋ผ์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

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

 

 

 

 

 

 

<'๊น€์˜ํ•œ - ์Šคํ”„๋ง ํ•ต์‹ฌ์›๋ฆฌ ๊ธฐ๋ณธ ํŽธ'์„ ์ฐธ๊ณ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.>

 
 

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

[spring] HttpServletRequest  (0) 2023.02.21
[spring] ์„œ๋ธ”๋ฆฟ  (0) 2023.02.20
[spring] ๋นˆ ์Šค์ฝ”ํ”„ (2)  (0) 2023.02.12
[spring] ๋นˆ ์Šค์ฝ”ํ”„ (1)  (0) 2023.02.07
[spring] ๋นˆ ์ƒ๋ช…์ฃผ๊ธฐ ์ฝœ๋ฐฑ  (0) 2023.02.02
    'Spring' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [spring] HttpServletRequest
    • [spring] ์„œ๋ธ”๋ฆฟ
    • [spring] ๋นˆ ์Šค์ฝ”ํ”„ (2)
    • [spring] ๋นˆ ์Šค์ฝ”ํ”„ (1)
    jiisoo
    jiisoo

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”