ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [HTTP] HTTP, ํด๋ผ์ด์–ธํŠธ ์„œ๋ฒ„ ๊ตฌ์กฐ, StateFul, Stateless
    HTTP 2023. 7. 10. 03:54
    728x90

    HTTP(HyperText Transfer Protocol)

    ๐Ÿ“Œ HTTP ๋ฉ”์„ธ์ง€์— ๋ชจ๋“  ๊ฒƒ์„ ๋‹ด์•„์„œ ์ „์†กํ•œ๋‹ค.

     

    • HTML, TEXT
    • IMAGE, ์Œ์„ฑ, ์˜์ƒ, ํŒŒ์ผ
    • JSON, XML (API)
    • ๊ฑฐ์˜ ๋ชจ๋“  ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ ์ „์†ก ๊ฐ€๋Šฅ
    • ์„œ๋ฒ„๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ๋„ ๋Œ€๋ถ€๋ถ„ HTTP ์‚ฌ์šฉ
    • ์ง€๊ธˆ์€ HTTP ์‹œ๋Œ€!!

    TPC๋ฅผ ์ง์ ‘ ์—ฐ๊ฒฐํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š”๊ฑด ๊ฑฐ์˜ ์—†์Œ

     

     

     

     

    ๐Ÿ”ป๊ธฐ๋ฐ˜ ํ”„๋กœํ† ์ฝœ

    • TCP ๊ธฐ๋ฐ˜: HTTP/1.1, HTTP/2
    • UDP ๊ธฐ๋ฐ˜: HTTP/3
    • ํ˜„์žฌ HTTP/1.1 ์ฃผ๋กœ ์‚ฌ์šฉ
    • HTTP/2, HTTP/3 ๋„ ์ ์  ์ฆ๊ฐ€

     

    F12๋กœ ํ™•์ธ

     


     

    ๐Ÿ’ฌ HTTP ํŠน์ง•

    • ํด๋ผ์ด์–ธํŠธ ์„œ๋ฒ„ ๊ตฌ์กฐ
    • ๋ฌด์ƒํƒœ ํ”„๋กœํ† ์ฝœ(์Šคํ…Œ์ด์Šค๋ฆฌ์Šค), ๋น„์—ฐ๊ฒฐ์„ฑ
    • HTTP ๋ฉ”์‹œ์ง€
    • ๋‹จ์ˆœํ•จ, ํ™•์žฅ ๊ฐ€๋Šฅ

     


     

    ๐Ÿ”ป 1. ํด๋ผ์ด์–ธํŠธ ์„œ๋ฒ„ ๊ตฌ์กฐ

     

    • Request Response ๊ตฌ์กฐ
    • ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ , ์‘๋‹ต์„ ๋Œ€๊ธฐ
    • ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด์„œ ์‘๋‹ต

     

    ๊ธฐ์กด์—๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์ง€ ์•Š์•˜์Œ

    ์ง€๊ธˆ์€ ๊ฐ๊ฐ ์—ญํ• ์ด ๋ถ„๋ฆฌ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— โ˜…๋…๋ฆฝ์ ์œผ๋กœ ์ง„ํ–‰โ˜…์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

     

     

     

     


     

     

    ๐Ÿ”ป 2. ๋ฌด์ƒํƒœ ํ”„๋กœํ† ์ฝœ
    ์Šคํ…Œ์ด์Šค๋ฆฌ์Šค(Stateless)

    • ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์˜ ์ƒํƒœ๋ฅผ ๋ณด์กดํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ
    • ์žฅ์ : ์„œ๋ฒ„ ํ™•์žฅ์„ฑ ๋†’์Œ(์Šค์ผ€์ผ ์•„์›ƒ)
    • ๋‹จ์ : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ ์ „์†ก

     

    ๐Ÿ‘‡Stateful, Stateless ์ฐจ์ด

    1-1. ์ƒํƒœ ์œ ์ง€ - Stateful
    • ๊ณ ๊ฐ: ์ด ๋…ธํŠธ๋ถ ์–ผ๋งˆ์ธ๊ฐ€์š”?
    • ์ ์›: 100๋งŒ์› ์ž…๋‹ˆ๋‹ค.(์ƒํ’ˆ-๋…ธํŠธ๋ถ ์ƒํƒœ ์œ ์ง€)

    • ๊ณ ๊ฐ: 2๊ฐœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›: 200๋งŒ์› ์ž…๋‹ˆ๋‹ค. ์‹ ์šฉ์นด๋“œ, ํ˜„๊ธˆ์ค‘์— ์–ด๋–ค ๊ฑธ๋กœ ๊ตฌ๋งค ํ•˜์‹œ๊ฒ ์–ด์š”?(์ƒํ’ˆ-๋…ธํŠธ๋ถ, ๊ฐฏ์ˆ˜-2๊ฐœ ์œ ์ง€)

    • ๊ณ ๊ฐ: ์‹ ์šฉ์นด๋“œ๋กœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›: 200๋งŒ์› ๊ฒฐ์ œ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.(๋…ธํŠธ๋ถ, 2๊ฐœ, ์‹ ์šฉ์นด๋“œ ์ƒํƒœ ์œ ์ง€)

     

    1-2. ์ƒํƒœ ์œ ์ง€ - Stateful, ์ ์›์ด ์ค‘๊ฐ„์— ๋ฐ”๋€๋‹ค๋ฉด?
    • ๊ณ ๊ฐ: ์ด ๋…ธํŠธ๋ถ ์–ผ๋งˆ์ธ๊ฐ€์š”?
    • ์ ์›A: 100๋งŒ์› ์ž…๋‹ˆ๋‹ค.

    • ๊ณ ๊ฐ: 2๊ฐœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›B: ? ๋ฌด์—‡์„ 2๊ฐœ ๊ตฌ๋งคํ•˜์‹œ๊ฒ ์–ด์š”?

    • ๊ณ ๊ฐ: ์‹ ์šฉ์นด๋“œ๋กœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›C: ? ๋ฌด์Šจ ์ œํ’ˆ์„ ๋ช‡ ๊ฐœ ์‹ ์šฉ์นด๋“œ๋กœ ๊ตฌ๋งคํ•˜์‹œ๊ฒ ์–ด์š”?

    Stateful์—์„œ๋Š” ์ ์›์ด ๋ฐ”๋€Œ๋ฉด ์ด์ „ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์—†์Œ

     = ํ•ญ์ƒ ๊ฐ™์€ ์„œ๋ฒ„๊ฐ€ ์œ ์ง€๋˜์–ด์•ผ ํ•œ๋‹ค.

    = ์—ฐ๊ฒฐํ•˜๋˜ ์„œ๋ฒ„๊ฐ€ ์ฃฝ์œผ๋ฉด ์ฒ˜์Œ๋ถ€ํ„ฐ ์ž‘์—…์„ ๋‹ค์‹œ ์ˆ˜ํ–‰ํ•ด์•ผ ๋œ๋‹ค.


     

    2-1. ๋ฌด์ƒํƒœ - Stateless
    • ๊ณ ๊ฐ: ์ด ๋…ธํŠธ๋ถ ์–ผ๋งˆ์ธ๊ฐ€์š”?
    • ์ ์›: 100๋งŒ์› ์ž…๋‹ˆ๋‹ค.

    • ๊ณ ๊ฐ: ๋…ธํŠธ๋ถ 2๊ฐœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›: ๋…ธํŠธ๋ถ 2๊ฐœ๋Š” 200๋งŒ์› ์ž…๋‹ˆ๋‹ค. ์‹ ์šฉ์นด๋“œ, ํ˜„๊ธˆ์ค‘์— ์–ด๋–ค ๊ฑธ๋กœ ๊ตฌ๋งค ํ•˜์‹œ๊ฒ ์–ด์š”?

    • ๊ณ ๊ฐ: ๋…ธํŠธ๋ถ 2๊ฐœ๋ฅผ ์‹ ์šฉ์นด๋“œ๋กœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›: 200๋งŒ์› ๊ฒฐ์ œ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

     

    2-2. ๋ฌด์ƒํƒœ - Stateless, ์ ์›์ด ์ค‘๊ฐ„์— ๋ฐ”๋€Œ๋ฉด?
    • ๊ณ ๊ฐ: ์ด ๋…ธํŠธ๋ถ ์–ผ๋งˆ์ธ๊ฐ€์š”?
    • ์ ์›A: 100๋งŒ์› ์ž…๋‹ˆ๋‹ค.

    • ๊ณ ๊ฐ: ๋…ธํŠธ๋ถ 2๊ฐœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›B: ๋…ธํŠธ๋ถ 2๊ฐœ๋Š” 200๋งŒ์› ์ž…๋‹ˆ๋‹ค. ์‹ ์šฉ์นด๋“œ, ํ˜„๊ธˆ์ค‘์— ์–ด๋–ค ๊ฑธ๋กœ ๊ตฌ๋งค ํ•˜์‹œ๊ฒ ์–ด์š”?

    • ๊ณ ๊ฐ: ๋…ธํŠธ๋ถ 2๊ฐœ๋ฅผ ์‹ ์šฉ์นด๋“œ๋กœ ๊ตฌ๋งคํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ ์›C: 200๋งŒ์› ๊ฒฐ์ œ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค

     

    Stateful๊ณผ์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์ด๋‹ค.

    Stateless์—์„œ๋Š” ๊ณ ๊ฐ์ด ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋•Œ๊ทธ๋•Œ ๋‹ค ๋„˜๊ฒจ์คŒ

     

     

     

     

    โœ… Stateful, Stateless ์ฐจ์ด ์ •๋ฆฌ

    • ์ƒํƒœ ์œ ์ง€: ์ค‘๊ฐ„์— ๋‹ค๋ฅธ ์ ์›์œผ๋กœ ๋ฐ”๋€Œ๋ฉด ์•ˆ๋œ๋‹ค.
    (์ค‘๊ฐ„์— ๋‹ค๋ฅธ ์ ์›์œผ๋กœ ๋ฐ”๋€” ๋•Œ ์ƒํƒœ ์ •๋ณด๋ฅผ ๋‹ค๋ฅธ ์ ์›์—๊ฒŒ ๋ฏธ๋ฆฌ ์•Œ๋ ค์ค˜์•ผ ํ•œ๋‹ค.)
    • ๋ฌด์ƒํƒœ: ์ค‘๊ฐ„์— ๋‹ค๋ฅธ ์ ์›์œผ๋กœ ๋ฐ”๋€Œ์–ด๋„ ๋œ๋‹ค.
    • ๊ฐ‘์ž๊ธฐ ๊ณ ๊ฐ์ด ์ฆ๊ฐ€ํ•ด๋„ ์ ์›์„ ๋Œ€๊ฑฐ ํˆฌ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๊ฐ‘์ž๊ธฐ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์ด ์ฆ๊ฐ€ํ•ด๋„ ์„œ๋ฒ„๋ฅผ ๋Œ€๊ฑฐ ํˆฌ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋ฌด์ƒํƒœ๋Š” ์‘๋‹ต ์„œ๋ฒ„๋ฅผ ์‰ฝ๊ฒŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค. -> ๋ฌดํ•œํ•œ ์„œ๋ฒ„ ์ฆ์„ค ๊ฐ€๋Šฅ

    ์•„๋ฌด ์„œ๋ฒ„๋‚˜ ํ˜ธ์ถœํ•ด๋„ ๋œ๋‹ค

    = ์ค‘๊ฐ„์— ์„œ๋ฒ„๊ฐ€ ์žฅ์• ๋‚˜๋„ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ง„ํ–‰ํ•œ๋‹ค.

     

     

     


     

     

     

    ๐Ÿ”ธ Stateless ์‹ค๋ฌด ํ•œ๊ณ„

    • ๋ชจ๋“  ๊ฒƒ์„ ๋ฌด์ƒํƒœ๋กœ ์„ค๊ณ„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๊ณ  ์—†๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.
    • ๋ฌด์ƒํƒœ
    • ์˜ˆ) ๋กœ๊ทธ์ธ์ด ํ•„์š” ์—†๋Š” ๋‹จ์ˆœํ•œ ์„œ๋น„์Šค ์†Œ๊ฐœ ํ™”๋ฉด

    • ์ƒํƒœ ์œ ์ง€
    • ์˜ˆ) ๋กœ๊ทธ์ธ

    • ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ ๋กœ๊ทธ์ธ ํ–ˆ๋‹ค๋Š” ์ƒํƒœ๋ฅผ ์„œ๋ฒ„์— ์œ ์ง€
    • ์ผ๋ฐ˜์ ์œผ๋กœ ๋ธŒ๋ผ์šฐ์ € ์ฟ ํ‚ค์™€ ์„œ๋ฒ„ ์„ธ์…˜๋“ฑ์„ ์‚ฌ์šฉํ•ด์„œ ์ƒํƒœ ์œ ์ง€
    •  ๋ฐ์ดํ„ฐ๋ฅผ ๋งŽ์ด ์“ด๋‹ค
    • ์ƒํƒœ ์œ ์ง€๋Š” ์ตœ์†Œํ•œ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.

     

     

     

     

     

     

    728x90
Designed by Tistory.