๐Ÿ’ปNetwork

์ฟ ํ‚ค, ์„ธ์…˜, ์บ์‹œ, ์Šคํ† ๋ฆฌ์ง€

IOTrue 2023. 3. 28. 23:59

๐Ÿ˜Ž ์ฟ ํ‚ค, ์„ธ์…˜, ์บ์‹œ, ์Šคํ† ๋ฆฌ์ง€

 

์ฟ ํ‚ค์™€ ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ์™€ ์ฐจ์ด์  ์š”์•ฝ
HTTP์˜ connectionless, stateless ํ”„๋กœํ† ์ฝœ ๋กœ ์ธํ•ด
ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์™€ ํ†ต์‹ ์„ ํ•  ๋•Œ๋งˆ๋‹ค ๊ณ„์† ์ธ์ฆ์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉํ•œ๋‹ค.
์‰ฝ๊ฒŒ ๋งํ•ด,  ์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ / ์„ธ์…˜์€ ์„œ๋ฒ„๊ฐ€ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ธ์ฆ์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
๋”ฐ๋ผ์„œ, Stateful ๊ฒฝ์šฐ๋ฅผ ๋Œ€์ฒ˜ํ•˜๊ธฐ ์œ„ํ•ด ์ฟ ํ‚ค์™€ ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๊ณ ,
์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด์ ์€ ํฌ๊ฒŒ ์ƒํƒœ ์ •๋ณด์˜ ์ €์žฅ ์œ„์น˜์ด๋‹ค.
์ฟ ํ‚ค๋Š” 'ํด๋ผ์ด์–ธํŠธ'์— ์ €์žฅํ•˜๊ณ , ์„ธ์…˜์€ '์„œ๋ฒ„'์— ์ €์žฅํ•œ๋‹ค.

HTTP ํ”„๋กœํ† ์ฝœ์˜ ํŠน์ง•

1. Connectionless ํ”„๋กœํ† ์ฝœ (๋น„์—ฐ๊ฒฐ ์ง€ํ–ฅ)

  ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ(Request)์„ ํ–ˆ์„ ๋•Œ, ๊ทธ ์š”์ฒญ์— ๋งž๋Š” ์‘๋‹ต(Response)์„ ๋ณด๋‚ธ ํ›„ ์—ฐ๊ฒฐ์„ ๋Š๋Š” ์ฒ˜๋ฆฌ๋ฐฉ์‹.

 

2. Stateless ํ”„๋กœํ† ์ฝœ

  ์ปค๋„ฅ์…˜์„ ๋Š๋Š” ์ˆœ๊ฐ„ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ํ†ต์‹ ์ด ๋๋‚˜๋ฉฐ ์ƒํƒœ ์ •๋ณด๋Š” ์œ ์ง€(์ €์žฅ)ํ•˜์ง€ ์•Š๋Š” ํŠน์„ฑ.

 

 

โœ… ์ฟ ํ‚ค(Cookie)

HTTP์˜ ์ผ์ข…์œผ๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋– ํ•œ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•  ๊ฒฝ์šฐ,

๊ทธ ์‚ฌ์ดํŠธ๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉ์ž์˜ ์ปดํ“จํ„ฐ์— ์ €์žฅํ•˜๋Š” ์ž‘์€ ๊ธฐ๋ก ์ •๋ณด ํŒŒ์ผ์ด๋‹ค.

HTTP์—์„œ ํด๋ผ์ด์–ธํŠธ์˜ ์ƒํƒœ ์ •๋ณด๋ฅผ ํด๋ผ์ด์–ธํŠธ์˜ PC์— ์ €์žฅํ•œ ํ›„ ํ•„์š” ์‹œ ์ •๋ณด๋ฅผ ์ฐธ์กฐํ•˜๊ฑฐ๋‚˜ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ ,

์ฟ ํ‚ค๋Š” ์„ค์ •๋œ ๋งŒ๋ฃŒ์ผ์— ๋”ฐ๋ผ ์ข…๋ฃŒ๋œ๋‹ค.

 

์ฟ ํ‚ค ํŠน์ง•

  1. ์ด๋ฆ„, ๊ฐ’, ๋งŒ๋ฃŒ์ผ(์ €์žฅ๊ธฐ๊ฐ„), ๊ฒฝ๋กœ ์ •๋ณด๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
  2. ํด๋ผ์ด์–ธํŠธ์— ์ด 300๊ฐœ์˜ ์ฟ ํ‚ค๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.
  3. ํ•˜๋‚˜์˜ ๋„๋ฉ”์ธ ๋‹น 20๊ฐœ์˜ ์ฟ ํ‚ค๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.
  4. ํ•˜๋‚˜์˜ ์ฟ ํ‚ค๋Š” 4KB(=4096byte)๊นŒ์ง€ ์ €์žฅ ๊ฐ€๋Šฅํ•˜๋‹ค.

์‚ฌ์šฉ ์˜ˆ์‹œ

  • ํŒ์—…์ฐฝ, "์˜ค๋Š˜ ์ด ์ฐฝ์„ ๋‹ค์‹œ ๋ณด์ง€ ์•Š๊ธฐ" ์ฒดํฌ ๊ธฐ๋Šฅ

 

์ฟ ํ‚ค ์ƒ๋ช… ์ฃผ๊ธฐ

์˜ต์…˜ max-age์™€ expires๋ฅผ ํ†ตํ•ด ๋งŒ๋ฃŒ์ผ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • max-age - ์œ ์ง€ ์‹œ๊ฐ„ ์„ค์ •
    • ์‚ฌ์šฉ ์˜ˆ์‹œ : max-age=3600
    • ์ฟ ํ‚ค ์œ ํšจ ์‹œ๊ฐ„์„ ๋ช…์‹œํ•œ๋‹ค. (๋‹จ์œ„ : ์ดˆ)
    • ๋งŒ์•ฝ 0์ด๋‚˜ ์Œ์ˆ˜๋กœ ์ง€์ •ํ•  ๊ฒฝ์šฐ ์ฟ ํ‚ค๋Š” ์ฆ‰์‹œ ๋งŒ๋ฃŒ(์‚ญ์ œ)๋œ๋‹ค.
  • expires - ๋งŒ๋ฃŒ ์‹œ๊ฐ„ ์„ค์ •
    • ์‚ฌ์šฉ ์˜ˆ์‹œ : expires=Mon, 3-Apr-2023 12:55:00 GMT
    • ๊ตฌ์ฒด์ ์ธ ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ๋ช…์‹œํ•œ๋‹ค.
    • ๋งŒ๋ฃŒ์ผ์ด ์ง€๋‚˜๋ฉด ์ฟ ํ‚ค๋Š” ์‚ญ์ œ๋œ๋‹ค. 
  • max-age์™€ expires ์†์„ฑ ๋‘˜ ๋‹ค ์ง€์ •๋˜์—ˆ์„ ๊ฒฝ์šฐ max-age๊ฐ€ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ–๋Š”๋‹ค.
  • ์ผ๋ถ€ ์˜ค๋ž˜๋œ ๋ธŒ๋ผ์šฐ์ €(http 1.0๋งŒ ์ง€์›ํ•˜๋Š”)์˜ ๊ฒฝ์šฐ max-age๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—
    ํ•˜์œ„ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด max-age์™€ expires๋ฅผ ๊ฐ™์ด ์‚ฌ์šฉํ•œ๋‹ค.
  • ์„ธ์…˜ ์ฟ ํ‚ค : ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์ƒ๋žตํ•˜๋ฉด ์ฟ ํ‚ค๋Š” ๋ธŒ๋ผ์šฐ์ € ์ข…๋ฃŒ ์ „๊นŒ์ง€๋งŒ ์œ ์ง€๋œ๋‹ค.
  • ์˜์† ์ฟ ํ‚ค : ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ฟ ํ‚ค๋Š” ํ•ด๋‹น ๋‚ ์งœ๊นŒ์ง€ ์œ ์ง€๋œ๋‹ค.

 

 

โœ… ์„ธ์…˜(Session)

์„ธ์…˜์€ ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ ๊ฐ™์€ ์‚ฌ์šฉ์ž(๋ธŒ๋ผ์šฐ์ €)๋กœ๋ถ€ํ„ฐ ๋“ค์–ด์˜ค๋Š” ์ผ๋ จ์˜ ์š”๊ตฌ๋ฅผ ํ•˜๋‚˜์˜ ์ƒํƒœ๋กœ ๋ณด๊ณ ,

๊ทธ ์ƒํƒœ๋ฅผ ์œ ์ง€์‹œํ‚ค๋Š” ๊ธฐ์ˆ ์ด๋‹ค.

์ผ์ • ์‹œ๊ฐ„์€, ์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด์„œ ์›น ์„œ๋ฒ„์— ์ ‘์†ํ•œ ์‹œ์ ๋ถ€ํ„ฐ

์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ข…๋ฃŒํ•˜์—ฌ ์—ฐ๊ฒฐ์„ ๋๋‚ด๋Š” ์‹œ์ ์„ ๋งํ•œ๋‹ค.

์ฆ‰, ๋ฐฉ๋ฌธ์ž๊ฐ€ ์›น ์„œ๋ฒ„์— ์ ‘์†ํ•ด ์žˆ๋Š” ์ƒํƒœ๋ฅผ ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ๋ณด๊ณ  ์ด๊ฒƒ์„ ์„ธ์…˜์ด๋ผ๊ณ  ํ•œ๋‹ค.

์ฟ ํ‚ค์™€ ์œ ์‚ฌํ•œ ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•˜์ง€๋งŒ,

์ฟ ํ‚ค๋ณด๋‹ค ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ณ , ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‹ซ์œผ๋ฉด ์ข…๋ฃŒ๋œ๋‹ค.

 

  • ์„ธ์…˜ ํŠน์ง•
    1. ์›น ์ปจํ…Œ์ด๋„ˆ์—์„œ ์ƒ์„ฑ๋˜์–ด ์„œ๋ฒ„์— ์ •๋ณด๋ฅผ ์ €์žฅํ•œ๋‹ค.
    2. ์›น ์„œ๋ฒ„์— ์ €์žฅ๋˜๋Š” ์ฟ ํ‚ค๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค(=์„ธ์…˜ ์ฟ ํ‚ค)
    3. ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‹ซ๊ฑฐ๋‚˜ ์„œ๋ฒ„์—์„œ ์„ธ์…˜์„ ์‚ญ์ œํ–ˆ์„ ๋•Œ๋งŒ ์‚ญ์ œ๊ฐ€ ๋˜๋ฏ€๋กœ, ์ฟ ํ‚ค๋ณด๋‹ค ๋ณด์•ˆ์„ฑ์ด ์ข‹๋‹ค.
    4. ์ €์žฅ ๋ฐ์ดํ„ฐ์— ์ œํ•œ์ด ์—†๋‹ค. (์„œ๋ฒ„ ์šฉ๋Ÿ‰์ด ํ—ˆ์šฉํ•˜๋Š” ํ•œ)
    5. ๊ฐ ํด๋ผ์ด์–ธํŠธ์— ๊ณ ์œ  Session ID๋ฅผ ๋ถ€์—ฌํ•˜๊ณ ,
      Session ID๋กœ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•ด ๊ฐ ์š”๊ตฌ์— ๋งž๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  • ์‚ฌ์šฉ ์˜ˆ์‹œ
    • ์‚ฌ์ดํŠธ ๋‚ด์—์„œ ํŽ˜์ด์ง€๋ฅผ ์ด๋™ํ•ด๋„ ๋กœ๊ทธ์ธ ์œ ์ง€

 

โœ… ์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด

์ฟ ํ‚ค์™€ ์„ธ์…˜์€ ๋ชจ๋‘ ์‚ฌ์šฉ์ž๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์ถ”์ ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค๋Š” ์ ์€ ๊ฐ™๋‹ค.
์„ธ์…˜๋„ ๊ฒฐ๊ตญ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฟ ํ‚ค์™€ ์„ธ์…˜์€ ๋น„์Šทํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ๋™์ž‘ ์›๋ฆฌ๋„ ๋น„์Šทํ•˜๋‹ค.

  • ํฐ ์ฐจ์ด์ ์€ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๊ฐ€ ์ €์žฅ๋˜๋Š” ์œ„์น˜์ด๋‹ค. 
    ์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ , ์„ธ์…˜์€ ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•œ๋‹ค.
  • ์ฟ ํ‚ค๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ํด๋ผ์ด์–ธํŠธ์— ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์—
    ๋ณ€์งˆ๋˜๊ฑฐ๋‚˜ request์—์„œ ์Šค๋‹ˆํ•‘ ๋‹นํ•  ์šฐ๋ ค๊ฐ€ ์žˆ์–ด์„œ ๋ณด์•ˆ์— ์ทจ์•ฝํ•˜๋‹ค.
  • ์„ธ์…˜์€ ์ฟ ํ‚ค๋ฅผ ์ด์šฉํ•ด์„œ ํด๋ผ์ด์–ธํŠธ์— session-id๋งŒ ์ €์žฅํ•˜๊ณ ,
    ์ด๊ฒƒ์œผ๋กœ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์„œ๋ฒ„์—์„œ ์ฒ˜๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„๊ต์  ๋ณด์•ˆ์„ฑ์ด ๋†’๋‹ค.
  • ์ฐจ์ด์  ์ค‘ ์ค‘์š”ํ•œ ์š”์†Œ๋Š” ๋ผ์ดํ”„ ์‚ฌ์ดํด์ด๋‹ค.
    ์ฟ ํ‚ค๋Š” ํŒŒ์ผ๋กœ ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ข…๋ฃŒํ•ด๋„ ์ •๋ณด ์œ ์ง€๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ ,
    ๋งŒ๋ฃŒ๊ธฐ๊ฐ„์„ ์ง€์ •ํ•ด์„œ ํŠน์ • ๊ธฐ๊ฐ„๊นŒ์ง€๋งŒ ์œ ์ง€ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
  • ์„ธ์…˜๋„ ๋งŒ๋ฃŒ๊ธฐ๊ฐ„์„ ์ •ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด ๋งŒ๋ฃŒ๊ธฐ๊ฐ„์— ์ƒ๊ด€์—†์ด ์‚ญ์ œ๋œ๋‹ค.
  • ์†๋„ ๋ฉด์—์„œ๋Š” ํด๋ผ์ด์–ธํŠธ์— ์ €์žฅํ•˜๋Š” ์ฟ ํ‚ค๊ฐ€ ๋” ์šฐ์ˆ˜ํ•˜๋‹ค.
    ์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ์— ์ •๋ณด๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„์— ์š”์ฒญ ์‹œ ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ 
    ์„ธ์…˜์€ ์ •๋ณด๊ฐ€ ์„œ๋ฒ„์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌ๊ฐ€ ์š”๊ตฌ๋˜์–ด ๋น„๊ต์  ์†๋„๊ฐ€ ๋А๋ฆฌ๋‹ค.

์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด์  ์ค‘

์ €์žฅ ์œ„์น˜์™€ ๋ณด์•ˆ์„ฑ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ผ์ดํ”„์‚ฌ์ดํด์ด๋‹ค.

๋ผ์ดํ”„์‚ฌ์ดํด์— ๋”ฐ๋ผ์„œ ํŠน์ • ์‹œ์ ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋ƒ ์—†๋ƒ๊ฐ€ ๋‹ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

Q. ๊ทธ๋ ‡๋‹ค๋ฉด ๋ณด์•ˆ์— ์ทจ์•ฝํ•œ ์ฟ ํ‚ค๋ฅผ ์™œ ์‚ฌ์šฉํ• ๊นŒ?

์„ธ์…˜์ด ์ฟ ํ‚ค์— ๋น„ํ•ด ๋ณด์•ˆ์ด ์šฐ์ˆ˜ํ•œ ํŽธ์ด์ง€๋งŒ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š”,
์„ธ์…˜์€ ์„œ๋ฒ„์— ์ €์žฅ๋˜๋Š”๋ฐ ์„œ๋ฒ„ ์ž์›์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ๊ณ , ์†๋„๊ฐ€ ๋А๋ ค์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 
์ž์›๊ด€๋ฆฌ ์ฐจ์›์—์„œ ์ฟ ํ‚ค์™€ ์„ธ์…˜์„ ์ ์ ˆํ•œ ์ƒํ™ฉ ๋ฐ ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ ๋ณ‘ํ–‰ ์‚ฌ์šฉํ•˜์—ฌ

์„œ๋ฒ„ ์ž์›์˜ ๋‚ญ๋น„๋ฅผ ๋ฐฉ์ง€ํ•˜๋ฉฐ ์›น์‚ฌ์ดํŠธ์˜ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

 

 

โœ… ์บ์‹œ

  • ์บ์‹œ๋Š” ์›น ํŽ˜์ด์ง€๋ฅผ ๋น ๋ฅด๊ฒŒ ๋ Œ๋”๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ์ž„์‹œ ์ €์žฅ์†Œ์ด๋‹ค.
  • ์ฟ ํ‚ค/์„ธ์…˜์ด ์‚ฌ์šฉ์ž์˜ ์ธ์ฆ์„ ๋„์™€์ฃผ๋Š” ๊ฒƒ๊ณผ ๋Œ€๋น„๋˜๋Š” ์ €์žฅ์†Œ์ด๋‹ค.
  • ์บ์‹œ๋Š” ์ด๋ฏธ์ง€, ๋™์˜์ƒ, CSS, Javascript ํŒŒ์ผ์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ ๋ณต์‚ฌํ•ด ๋†“์€ ๋ฆฌ์†Œ์Šค ํŒŒ์ผ๋“ค์˜ ์ž„์‹œ ์ €์žฅ์†Œ์ด๋‹ค.
  • ์บ์‹œ ๊ฐ€๋Šฅ ์‹œ๊ฐ„๋™์•ˆ ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ ์ €์žฅ๊ณต๊ฐ„์€ ์†๋„๊ฐ€ ๋น ๋ฅผ์ˆ˜๋ก ์šฉ๋Ÿ‰์ด ์ž‘๊ณ , ๊ฐ€๊ฒฉ์ด ๋น„์‹ธ๋‹ค.
  • ๊ฐ™์€ ์›น ํŽ˜์ด์ง€๋ฅผ ์ ‘์†ํ•  ๋•Œ ์‚ฌ์šฉ์ž์˜ PC์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๋“œํ•˜๋ฏ€๋กœ
    ์„œ๋ฒ„๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š์•„๋„ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ Œ๋”๋ง์ด ๋นจ๋ผ์ง„๋‹ค.

Q. ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋‘ ์บ์‹œ์— ์ €์žฅํ•ด์„œ ์‚ฌ์šฉํ•˜๋ฉด ๋ Œ๋”๋ง์ด ๋” ๋นจ๋ผ์ง€๊ฒ ์ง€?

์บ์‹œ๋Š” ์ €์žฅ ๊ณต๊ฐ„์ด ํฌ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๊ธฐ๋Š” ์–ด๋ ต๋‹ค.

๊ทธ๋ž˜์„œ ๋ณดํ†ต ์บ์‹œ๋Š” ์ง€์—ญ์„ฑ์„ ๋‚˜๋ˆ„์–ด ๋ถ„๋ฅ˜ํ•œ๋‹ค.

 

์‹œ๊ฐ„์  ์ง€์—ญ์„ฑ

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

 

๊ณต๊ฐ„์  ์ง€์—ญ์„ฑ

ํŠน์ • ๋ฐ์ดํ„ฐ์™€ ๊ฐ€๊นŒ์šด ์ฃผ์†Œ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ ‘๊ทผ๋˜์—ˆ์„ ๊ฒฝ์šฐ๋ฅผ ๋งํ•œ๋‹ค.

CPU ์บ์‹œ๋‚˜ ๋””์Šคํฌ ์บ์‹œ์˜ ๊ฒฝ์šฐ์—๋Š” ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ์ ‘๊ทผํ•  ๋•Œ ๊ทธ ์ฃผ์†Œ์™ธ์—๋„ ํ•ด๋‹น ๋ธ”๋ก์„ ์ „๋ถ€ ์บ์‹œ์— ๊ฐ€์ ธ์˜จ๋‹ค.
์ด ๋•Œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํŠน์ •ํ•œ ์ˆœ์„œ(์˜ค๋ฆ„์ฐจ์ˆœ, ๋‚ด๋ฆผ์ฐจ์ˆœ ๋“ฑ)๋กœ ์ ‘๊ทผํ•œ๋‹ค๋ฉด

์บ์‹œ์— ์ด๋ฏธ ์ €์žฅ๋œ ๊ฐ™์€ ๋ธ”๋ก์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ ‘๊ทผํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ ์บ์‹œ์˜ ํšจ์œจ์„ฑ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋œ๋‹ค.
์ฆ‰, ๊ฐ€์ ธ์˜ฌ ๋ธ”๋ก์•ˆ์— ์•ž์œผ๋กœ ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋“ค์ด ๋ชจ์—ฌ์žˆ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.

ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ชจ์—ฌ์žˆ๋‹ค๋ฉด ํ•œ๋ฒˆ๋งŒ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•ด๋„ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋“ค์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
๋งŒ์•ฝ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ชจ์—ฌ์žˆ์ง€ ์•Š๋‹ค๋ฉด

Cache Miss ํ™•๋ฅ ์ด ๋†’์•„์ง€๊ณ  ๋ฉ”๋ชจ๋ฆฌ์— ์—ฌ๋Ÿฌ ๋ฒˆ ์ ‘๊ทผํ•˜๊ฒŒ ๋˜์–ด ํšจ์œจ์„ฑ์ด ๋–จ์–ด์ง„๋‹ค.

 

Cache Hit : ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ Cache Memory ๋‚ด์— ๋“ค์–ด์™€ ์žˆ๋Š” ๊ฒฝ์šฐ
Cache Miss : ์ ‘๊ทผํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ

 

์บ์‹œ์˜ ํ™œ์šฉ

1. ๋ธŒ๋ผ์šฐ์ € ์บ์‹œ

- ๋ธŒ๋ผ์šฐ์ € ๋˜๋Š” HTTP์š”์ฒญ์„ ํ•˜๋Š” Client Application์— ์˜ํ•ด ๋‚ด๋ถ€ ๋””์Šคํฌ์— Cache๋œ๋‹ค.

- Cache๋œ Resource๋ฅผ ๊ณต์œ ํ•˜์ง€ ์•Š๋Š” ํ•œ ๊ฐœ์ธ์— ํ•œ์ •๋จ.

- ๋ธŒ๋ผ์šฐ์ €์˜ ๋’ค๋กœ๊ฐ€๊ธฐ ๋ฒ„ํŠผ์ด๋‚˜ ์ด๋ฏธ ๋ฐฉ๋ฌธํ•œ ํŽ˜์ด์ง€๋ฅผ ์žฌ ๋ฐฉ๋ฌธํ•˜๋Š” ๊ฒฝ์šฐ ํšจ์œจ์„ฑ ๊ทน๋Œ€ํ™”

 

2. ํ”„๋ก์‹œ ์บ์‹œ

- ๋ธŒ๋ผ์šฐ์ € ์บ์‹œ์™€ ๋™์ผํ•œ ์›๋ฆฌ๋กœ ๋™์ž‘ํ•˜๋ฉฐ Client๋‚˜ Server๊ฐ€ ์•„๋‹Œ ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ๋™์ž‘ํ•œ๋‹ค.

- ํฐ ํšŒ์‚ฌ๋‚˜ IPS์˜ ๋ฐฉํ™”๋ฒฝ์— ์„ค์น˜๋˜๋ฉฐ ๋Œ€๊ธฐ์‹œ๊ฐ„ & ํŠธ๋ž˜ํ”ฝ ๊ฐ์†Œ, ์ ‘๊ทผ์ •์ฑ… & ์ œํ•œ ์šฐํšŒ, ์‚ฌ์šฉ ๋กœ๊ทธ๋“ฑ ์ž‘์—…

- ํ•œ์ •๋œ ์ˆ˜์˜ ํด๋ผ์ด์–ธํŠธ์„ ์œ„ํ•ด ๋ฌดํ•œ๋Œ€์˜ ์›น์„œ๋ฒ„์˜ ์ปจํ…์ธ ๋ฅผ ์บ์‰ฌ

  

3. ๊ฒŒ์ดํŠธ์›จ์ด ์บ์‹œ Gateway Caches (REVERSE OR SURROGATE PROXY)

- ์„œ๋ฒ„ ์•ž ๋‹จ์— ์„ค์น˜๋˜์–ด ์š”์ฒญ์— ๋Œ€ํ•œ ์บ์‰ฌ ๋ฐ ํšจ์œจ์ ์ธ ๋ถ„๋ฐฐ๋ฅผ ํ†ตํ•ด ๊ฐ€์šฉ์„ฑ, ์‹ ๋ขฐ์„ฑ, ์„ฑ๋Šฅ๋“ฑ์„ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค.

- Encryption / SSL acceleration, Load balancing, Serve/cache static content, Compression๋“ฑ์„ ์ž‘์—…

- ๋ฌดํ•œ๋Œ€์˜ ํด๋ผ์ด์–ธํŠธ๋“ค์—๊ฒŒ ํ•œ์ •๋œ ์ˆ˜(๋˜๋Š” ํ•˜๋‚˜)์˜ ์›น์„œ๋ฒ„ ์ปจํ…์ธ ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

 

 

 

โœ… ๋กœ์ปฌ/์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€  (์›น ์Šคํ† ๋ฆฌ์ง€)

๋งŒ์•ฝ, ์ฟ ํ‚ค ์ •๋ณด๊ฐ€ ๋งŽ์•„์ง„๋‹ค๋ฉด HTTP ํ—ค๋”์˜ ์šฉ๋Ÿ‰์€ ๊ณ„์† ์ปค์ง€๊ฒŒ ๋œ๋‹ค.

์ด ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด html5์—์„œ๋Š” ์ฟ ํ‚ค ๋Œ€์‹  storage๋ผ๋Š” ๊ฐœ๋…์ด ๋“ฑ์žฅํ•œ๋‹ค.

  • ์›น ์Šคํ† ๋ฆฌ์ง€๋Š” HTML5๋ฅผ ์ง€์›ํ•˜๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • key์™€ value๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์›น ์Šคํ† ๋ฆฌ์ง€๋Š” ์„œ๋ฒ„์— ์ „์†ก๋˜์ง€ ์•Š๊ณ  ํด๋ผ์ด์–ธํŠธ์— ์ €์žฅํ•œ๋‹ค.
  • ์ฟ ํ‚ค์˜ ์šฉ๋Ÿ‰์€ 4kb์ธ๋ฐ ๋น„ํ•ด ์›น ์Šคํ† ๋ฆฌ์ง€๋Š” ํ•˜๋‚˜์˜ ๋„๋ฉ”์ธ๋‹น 5mb๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€ ์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€
๋ฐ์ดํ„ฐ ์œ ์ง€ ๋ธŒ๋ผ์šฐ์ €, ํƒญ ์ข…๋ฃŒํ•ด๋„ ๋ฐ์ดํ„ฐ ์œ ์ง€ ๋ธŒ๋ผ์šฐ์ €, ํƒญ ์ข…๋ฃŒ ์‹œ ๋ฐ์ดํ„ฐ ์‚ญ์ œ
์‚ฌ์šฉ์˜ˆ์‹œ ์ž๋™ ๋กœ๊ทธ์ธ ์ผํšŒ์„ฑ ๋กœ๊ทธ์ธ
์ฃผ์˜์‚ฌํ•ญ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ๊ฐ™์€ ์ค‘์š” ์ •๋ณด๋Š” ์ €์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค  

 

 

โ— ์ •๋ฆฌ

์ฟ ํ‚ค, ์„ธ์…˜, ์บ์‹œ, ์Šคํ† ๋ฆฌ์ง€ ๋ชจ๋‘ ํŠน์ • ์ƒํ™ฉ์— ํ•„์š”์— ๋”ฐ๋ผ ์‚ฌ์šฉํ•˜๋Š” '์ €์žฅ์†Œ'์˜ ๊ฐœ๋…์ด๋‹ค.

์ฟ ํ‚ค๋Š” ๋กœ์ปฌ์— ์ €์žฅํ•˜๊ณ , ์„ธ์…˜์€ ์„œ๋ฒ„์— ์ €์žฅํ•˜๋ฉฐ, ๋ผ์ดํ”„์‚ฌ์ดํด์˜ ์ฐจ์ด๊ฐ€ ์ค‘์š”ํ•˜๊ณ ,

์ฟ ํ‚ค์˜ ์šฉ๋Ÿ‰๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ html5์—์„œ๋Š” storage๋ผ๋Š” ๊ฒƒ์ด ๋“ฑ์žฅํ–ˆ๋‹ค.

ํ•„์š” ๋ชฉ์ ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ ์œ ์ง€์˜ ์ฐจ์ด๊ฐ€ ์žˆ๋Š” ๋กœ์ปฌ ๋˜๋Š” ์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์บ์‹œ๋Š” ์›นํŽ˜์ด์ง€๋ฅผ ๋น ๋ฅด๊ฒŒ ๋žœ๋”๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋ฆฌ์†Œ์Šค ํŒŒ์ผ๋“ค์˜ ์ž„์‹œ ์ €์žฅ์†Œ์ด๋‹ค.

์ƒํ™ฉ์— ๋”ฐ๋ผ ์•Œ๋งž๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

 

 

 

์ฐธ๊ณ 

์ฟ ํ‚ค : https://ko.javascript.info/cookie

์ฟ ํ‚ค ์„ธ์…˜ : https://dev-coco.tistory.com/61

์บ์‹œ : https://developer.mozilla.org/ko/docs/Web/HTTP/Caching

์›น ์Šคํ† ๋ฆฌ์ง€ : https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API