7.Caching

[Intro]

์›น ์บ์‹œ๋Š” ์ž์ฃผ ์“ฐ์ด๋Š” ๋ฌธ์„œ์˜ ์‚ฌ๋ณธ์„ ์ž๋™ ๋ณด๊ด€ํ•˜๋Š” HTTP ์žฅ์น˜์ด๋‹ค.

์›น ์š”์ฒญ์ด ์บ์‹œ์— ๋„์ฐฉํ–ˆ์„ ๋•Œ ์บ์‹œ๋œ ๋กœ์ปฌ ์‚ฌ๋ณธ์ด ์กด์žฌํ•œ๋‹ค๋ฉด ๊ทธ ๋ฌธ์„œ๋Š” ์›์„œ๋ฒ„๊ฐ€ ์•„๋‹ˆ๋ผ ์บ์‹œ์—์„œ ์ œ๊ณต๋œ๋‹ค.

1-4) ์บ์‹œ๊ฐ€ ์ฃผ๋Š” ํ˜œํƒ

  1. ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ์ค„์—ฌ, ๋„คํŠธ์›Œํฌ ์š”๊ธˆ์œผ๋กœ์ธํ•œ ๋น„์šฉ์„ ์ค„์ธ๋‹ค.

  2. ๋„คํŠธ์›Œํฌ ๋ณ‘๋ชฉ์„ ์ค„์ธ๋‹ค. ๋Œ€์—ญํญ์„ ๋Š˜๋ฆฌ์ง€ ์•Š๊ณ ๋„ ํŽ˜์ด์ง€๋ฅผ ๋นจ๋ฆฌ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

  3. ์›์„œ๋ฒ„์— ๋Œ€ํ•œ ์š”์ฒญ์„ ์ค„์ธ๋‹ค. ์„œ๋ฒ„๋Š” ๋ถ€ํ•˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ  ๋” ๋นจ๋ฆฌ ์‘๋‹ตํ•  ์ˆ˜ ์žˆ๋‹ค.

    (๊ฐ‘์ž‘์Šค๋Ÿฐ ์ด๋ฒคํŠธ์— ๋”ฐ๋ฅธ ๋Œ€์ฒ˜์— ์ค‘์š”. ๋งŽ์€ ์‚ฌ๋žŒ์ด ๋™์‹œ์— ์ ‘๊ทผํ•  ๋•Œ e.g ์ˆ˜๊ฐ•์‹ ์ฒญ, ์ด๋ฒคํŠธ, ๊ฐœํ‘œ)

  4. ๊ฑฐ๋ฆฌ๋กœ์ธํ•œ ์ง€์—ฐ์„ ์ค„์—ฌ์ค€๋‹ค.

    ์บ์‹œ๋Š” ์œ ์šฉํ•˜์ง€๋งŒ, ๋ชจ๋“  ๋ฌธ์„œ์˜ ์‚ฌ๋ณธ์„ ์ €์žฅํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค. ์›น์— ์žˆ๋Š” ๋ชจ๋“  ๋ฌธ์„œ๋ฅผ ๋ณด๊ด€ํ• ๋งŒํผ ์ถฉ๋ถ„ํ•œ ์บ์‹œ๋ฅผ ์‚ด ๋Šฅ๋ ฅ์ด ์žˆ๋Š” ์‚ฌ๋žŒ์€ ๊ฑฐ์˜ ์—†๊ณ , ์‚ด์ˆ˜ ์žˆ๋‹ค ํ•˜๋”๋ผ๋„ ๋ช‡๋ช‡ ๋ฌธ์„œ๋Š” ์ž์ฃผ ๋ณ€๊ฒฝ๋˜์–ด ์‹ ์„ ํ•œ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์–ด๋ ต๋‹ค.

5) ์บ์‹œ ์ ์ค‘, ๋ถ€์ ์ค‘ (Hits and Misses)

์บ์‹œ์— ์š”์ฒญ์ด ๋„์ฐฉํ–ˆ์„ ๋•Œ

  • ๋Œ€์‘ํ•˜๋Š” ์‚ฌ๋ณธ์ด ์žˆ์„ ๋•Œ โ‡’ ์บ์‹œ์ ์ค‘(cache hit)

  • ๋Œ€์‘ํ•˜๋Š” ์‚ฌ๋ณธ์ด ์—†์„ ๋•Œ โ‡’ ์บ์‹œ ๋ถ€์ ์ค‘(cache miss), ์›์„œ๋ฒ„๋กœ ์ „๋‹ฌ๋˜๊ธฐ๋งŒ ํ•จ.

โ‘  ์žฌ๊ฒ€์‚ฌ(revalidation)

์›์„œ๋ฒ„ ์ฝ˜ํ…์ธ ๋Š” ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์บ์‹œ๋Š” ๋ฐ˜๋“œ์‹œ ๊ฐ€์ง€๊ณ ์žˆ๋Š” ์‚ฌ๋ณธ์ด ์—ฌ์ „ํžˆ ์ตœ์‹ ์ธ์ง€ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด์„œ ๋•Œ๋•Œ๋กœ ์ ๊ฒ€ํ•ด์•ผํ•œ๋‹ค. ์ด๋Ÿฐ '์‹ ์„ ๋„ ๊ฒ€์‚ฌ' ๋ฅผ ์žฌ๊ฒ€์‚ฌ๋ผ๊ณ  ํ•œ๋‹ค. ํšจ๊ณผ์ ์ธ ์žฌ๊ฒ€์‚ฌ๋ฅผ ์œ„ํ•ด ์„œ๋ฒ„์—์„œ ์ „์ฒด ๊ฐ์ฒด๋ฅผ ๊ฐ€์ ธ์˜ค์ง€ ์•Š๊ณ ๋„ ์—ฌ์ „ํžˆ ์ฝ˜ํ…์ธ ๊ฐ€ ์‹ ์„ ํ•œ์ง€ ๋น ๋ฅด๊ฒŒ ๊ฒ€์‚ฌํ•  ์ˆ˜ ์žˆ๋Š” ํŠน๋ณ„ํ•œ ์š”์ฒญ์„ ์ •์˜ํ–ˆ๋‹ค.

์บ์‹œ๋Š” ์–ธ์ œ๋“  ์‚ฌ๋ณธ์— ๋Œ€ํ•ด ์žฌ๊ฒ€์‚ฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋„คํŠธ์›Œํฌ ๋Œ€์—ญํญ์ด ๋ฌธ์„œ๋Ÿ‰์— ๋น„ํ•ด ๋ถ€์กฑํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋ณธ์ด ๊ฒ€์‚ฌ๋ฅผ ํ•„์š”๋กœ ํ•  ์ •๋„๋กœ ์˜ค๋ž˜๋œ ๊ฒฝ์šฐ์—๋งŒ ์žฌ๊ฒ€์‚ฌํ•œ๋‹ค.

HTTP๋Š” ์บ์‹œ๋œ ๊ฐ์ฒด ์žฌํ™•์ธ์„ ์œ„ํ•ด ์ œ๊ณตํ•˜๋Š” ๋„๊ตฌ์ค‘ If-Modified-Since ํ—ค๋”๋ฅผ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค. GET ์š”์ฒญ์— ์ด ํ—ค๋”๋ฅผ ์ถ”๊ฐ€ํ•ด๋‘๋ฉด ์บ์‹œ๋œ ์‹œ๊ฐ„ ์ดํ›„ ๋ณ€๊ฒฝ๋œ ๊ฒฝ์šฐ์—๋งŒ ์‚ฌ๋ณธ์„ ๋ณด๋‚ด๋‹ฌ๋ผ๋Š” ์˜๋ฏธ๊ฐ€ ๋˜๊ณ  3๊ฐ€์ง€ ์ƒํ™ฉ ๊ฐ€๋Šฅ.

  • ์žฌ๊ฒ€์‚ฌ ์ ์ค‘ (= ๋Š๋ฆฐ ์ ์ค‘)

    ์›์„œ๋ฒ„์— ์ž‘์€ ์žฌ๊ฒ€์‚ฌ ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ  ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์•˜์œผ๋ฉด ์•„์ฃผ ์ž‘์€ ์‘๋‹ต(304 not modified )์„ ๋ณด๋‚ธ๋‹ค. ์—ฌ์ „ํžˆ ์‹ ์„ ํ•˜๋‹ค๊ณ  ์ž„์‹œํ‘œ์‹œํ•˜๊ณ  ์‚ฌ๋ณธ์„ ํด๋ผ์ด์–ธํŠธ์— ๋ณด๋‚ด์ค€๋‹ค. ์ˆœ์ˆ˜ ์บ์‹œ ์ ์ค‘๋ณด๋‹ค๋Š” ๋Š๋ฆฌ์ง€๋งŒ, ์บ์‹œ ๋ถ€์ ์ค‘๋ณด๋‹ค๋Š” ๋น ๋ฅด๋‹ค. ์„œ๋ฒ„์—์„œ ๊ฐ์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์„ ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ.

  • ์žฌ๊ฒ€์‚ฌ ๋ถ€์ ์ค‘

    ์บ์‹œ๋œ ์‚ฌ๋ณธ๊ณผ ๋‹ค๋ฅธ ๊ฒฝ์šฐ ์ฝ˜ํ…์ธ  ์ „์ฒด์™€ ํ•จ๊ป˜ ํ‰๋ฒ”ํ•œ HTTP 200 ok ์‘๋‹ต์„ ํด๋ผ์ด์–ธํŠธ์— ๋ณด๋‚ธ๋‹ค.

  • ๊ฐ์ฒด ์‚ญ์ œ

    ์„œ๋ฒ„ ๊ฐ์ฒด๊ฐ€ ์‚ญ์ œ๋œ ๊ฒฝ์šฐ 404 Not Found ์‘๋‹ต์„ ๋ณด๋‚ด๊ณ  ์บ์‹œ ์‚ฌ๋ณธ์„ ์‚ญ์ œํ•œ๋‹ค.

โ‘ก ์ ์ค‘๋ฅ 

  • ์บ์‹œ๊ฐ€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋น„์œจ (= ์บ์‹œ ์ ์ค‘๋ฅ , ์บ์‹œ ์ ์ค‘๋น„, ๋ฌธ์„œ ์ ์ค‘๋ฅ , ์ ์ค‘๋น„...)

  • 0~1 ํ˜น์€ 0~100% ๋กœ ํ‘œ์‹œํ•˜๊ณ  100%(1)๊ฐ€ ๋ชจ๋“  ์š”์ฒญ์„ ์บ์‹œ์—์„œ ์‚ฌ๋ณธ์„ ๊ฐ€์ ธ์˜จ ๊ฒฝ์šฐ์ด๋‹ค.

  • ๋ณดํ†ต 40% ์ ์ค‘๋ฅ ์ด๋ฉด ์›น ์บ์‹œ๋กœ ๊ดœ์ฐฎ์€ ํŽธ์ด๋ผ๊ณ  ํ•œ๋‹ค.

  • ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์›น ํŠธ๋žœ์žญ์…˜์„ ์™ธ๋ถ€๋กœ ๋‚ด๋ณด๋‚ด์ง€ ์•Š์•˜๋Š”์ง€ ๋ณด์—ฌ์ค€๋‹ค. ๊ฐœ์„ ์‹œ ์ „์ฒด ๋Œ€๊ธฐ์‹œ๊ฐ„์„ ์ค„์ผ์ˆ˜์žˆ๋‹ค.

โ‘ข ๋ฐ”์ดํŠธ ์ ์ค‘๋ฅ 

  • ๋ฌธ์„œ ํฌ๊ธฐ๊ฐ€ ๋‹ค ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ์„œ ์ ์ค‘๋ฅ ์ด ๋ชจ๋“ ๊ฑธ ๋งํ•˜์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜์˜จ ๋ฐ”์ดํŠธ ์ ์ค‘๋ฅ .

  • ์บ์‹œ๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋œ ๋ชจ๋“  ๋ฐ”์ดํŠธ์˜ ๋น„์œจ์„ ํ‘œํ˜„

  • ํŠธ๋ž˜ํ”ฝ์ด ์ ˆ๊ฐ๋œ ์ •๋„๋ฅผ ํฌ์ฐฉํ•œ๋‹ค.

  • ๋Œ€์—ญํญ ์ ˆ์•ฝ์„ ์ตœ์ ํ™”ํ•œ๋‹ค.

โ‘ฃ ์ ์ค‘ ๋ถ€์ ์ค‘ ๊ตฌ๋ณ„

์‘๋‹ต์ด ์บ์‹œ ์ ์ค‘์ด์—ˆ๋Š”์ง€, ์›์„œ๋ฒ„ ์ ‘๊ทผ์ด์—ˆ๋Š”์ง€ HTTP๋Š” ๋งํ•ด์ค„ ๋ฐฉ๋ฒ•์ด ์—†์Œ.

๋‘ ๊ฒฝ์šฐ ๋ชจ๋‘ ์‘๋‹ต ์ฝ”๋“œ๋Š” 200ok (์‘๋‹ต์ด ๋ณธ๋ฌธ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋กœ ์•Œ๋ ค์คŒ)

์–ด๋–ค ์ƒ์šฉ ํ”„๋ฝ์‹œ ์บ์‹œ๋Š” via ํ—ค๋”์— ์ถ”๊ฐ€์ •๋ณด๋ฅผ ๋ถ™์ด๊ธฐ๋„ ํ•œ๋‹ค.

Date ํ—ค๋”๋ฅผ ์ด์šฉํ•ด์„œ ํ˜„์žฌ์‹œ๊ฐ„๋ณด๋‹ค ์‘๋‹ต์˜ ์ƒ์„ฑ์ผ์ด ๋” ์˜ค๋ž˜์ „์ด๋ฉด ์‘๋‹ต์ด ์บ์‹œ ๋ฌ์Œ์„ ์œ ์ถ”ํ• ์ˆ˜์žˆ๋‹ค.

์‘๋‹ต์ด ์–ผ๋งˆ๋‚˜ ์˜ค๋ž˜๋˜์—ˆ๋Š”์ง€ age ํ—ค๋”๋ฅผ ์ด์šฉํ•˜๊ธฐ๋„ํ•œ๋‹ค.

6) ์บ์‹œ ํ† ํด๋กœ์ง€(Cache Topologies)

โ‘  ๊ฐœ์ธ ์ „์šฉ ์บ์‹œ

ํ•œ๋ช…์˜ ์‚ฌ์šฉ์ž์—๊ฒŒ๋งŒ ํ• ๋‹น๋œ ์บ์‹œ๋กœ, ํ•œ๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ž์ฃผ ์ฐพ๋Š” ํŽ˜์ด์ง€๋ฅผ ๋‹ด๋Š”๋‹ค.

  • ๋งŽ์€ ์—๋„ˆ์ง€๋‚˜ ์ €์žฅ๊ณต๊ฐ„์„ ํ•„์š”๋กœ ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ž‘๊ณ  ์ €๋ ด

  • ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ๊ฐœ์ธ ์ „์šฉ ์บ์‹œ๋ฅผ ๋‚ด์žฅํ•˜๊ณ ์žˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ๋ธŒ๋ผ์šฐ์ €๋Š” ์ž์ฃผ ์“ฐ์ด๋Š” ๋ฌธ์„œ๋ฅผ ๊ฐœ์ธ์šฉ ์ปดํ“จํ„ฐ์˜ ๋””์Šคํฌ์™€ ๋ฉ”๋ชจ๋ฆฌ์— ์บ์‹œํ•ด๋‘๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์บ์‹œ์‚ฌ์ด์ฆˆ์™€ ์„ค์ •์„ ์ˆ˜์ •ํ•˜๋„๋ก ํ—ˆ์šฉํ•œ๋‹ค.

  • ์บ์‹œ์— ์–ด๋–ค๊ฒƒ๋“ค์ด ๋“ค์–ด์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋ธŒ๋ผ์šฐ์ € ์•ˆ์„ ๋“ค์—ฌ๋‹ค๋ณด๋Š”๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

โ‘ก ๊ณต์šฉ ํ”„๋ฝ์‹œ ์บ์‹œ

๊ณต์œ ๋œ ์บ์‹œ๋Š” ๊ณต์šฉ์บ์‹œ๋ผ๊ณ  ๋ถˆ๋ฆฌ๋ฉฐ, ์‚ฌ์šฉ์ž ์ง‘๋‹จ์— ์ž์ฃผ์“ฐ์ด๋Š” ํŽ˜์ด์ง€๋ฅผ ๋‹ด๋Š”๋‹ค.

  • ๊ณต์šฉ์บ์‹œ ( = ์บ์‹œ ํ”„๋ฝ์‹œ ์„œ๋ฒ„ ,ํ”„๋ฝ์‹œ ์บ์‹œ ๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ํŠน๋ณ„ํ•œ ์ข…๋ฅ˜์˜ ๊ณต์œ ๋œ ํ”„๋ฝ์‹œ์„œ๋ฒ„)

  • ํ”„๋ฝ์‹œ ์บ์‹œ๋Š” ๋กœ์ปฌ ์บ์‹œ์—์„œ ๋ฌธ์„œ๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ์ž ์ž…์žฅ์—์„œ ์„œ๋ฒ„์— ์ ‘๊ทผํ•œ๋‹ค.

  • ๊ณต์šฉ ์บ์‹œ์—๋Š” ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘๊ทผํ•˜๋ฏ€๋กœ ๋ถˆํ•„์š”ํ•œ ํŠธ๋ž˜ํ”ฝ์„ ์ค„์ผ์ˆ˜ ์žˆ๋Š” ๋” ๋งŽ์€ ๊ธฐํšŒ๊ฐ€ ์žˆ๋‹ค.

  • ํ”„๋ฝ์‹œ ์บ์‹œ๋Š” 6์žฅ์—์„œ ๋ฐฐ์šด ํ”„๋ฝ์‹œ ๊ทœ์น™์„ ๋”ฐ๋ฅธ๋‹ค. (์ˆ˜๋™, ์ž๋™์„ค์ •ํŒŒ์ผ ...)

  • ์ธํ„ฐ์…‰ํŠธ ํ”„๋ฝ์‹œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ธŒ๋ผ์šฐ์ € ์„ค์ •์—†์ด HTTP ์š”์ฒญ์ด ์บ์‹œ๋ฅผ ํ†ตํ•˜๋„๋ก ๊ฐ•์ œํ• ์ˆ˜์žˆ๋‹ค.

โ‘ข ํ”„๋ฝ์‹œ ์บ์‹œ ๊ณ„์ธต๋“ค

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

โ‘ฃ ์บ์‹œ๋ง, ์ฝ˜ํ…์ธ  ๋ผ์šฐํŒ…, ํ”ผ์–ด๋ง

๋ช‡๋ช‡ ๋„คํŠธ์›Œํฌ ์•„ํ‚คํ…์ฒ˜๋Š” ๋‹จ์ˆœํ•œ ์บ์‹œ ๊ณ„์ธต ๋Œ€์‹  ๋ณต์žกํ•œ ์บ์‹œ๋ง์„ ๋งŒ๋“ ๋‹ค.

์บ์‹œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ๋™์ ์œผ๋กœ ๊ฒฐ์ •ํ•œ๋‹ค. [์–ด๋–ค ๋ถ€๋ชจ์บ์‹œ์™€ ๋Œ€ํ™”ํ• ์ง€, ์š”์ฒญ์ด ์บ์‹œ๋ฅผ ์™„์ „ ์šฐํšŒํ•ด์„œ ์›์„œ๋ฒ„์™€ ๋Œ€ํ™”ํ• ์ง€ ๋“ฑ]

์บ์‹œ๋ง ๋‚ด์—์„œ ์ฝ˜ํ…์ธ  ๋ผ์šฐํŒ…์„ ์œ„ํ•ด ์„ค๊ณ„๋œ ์บ์‹œ๋“ค์€ ์•„๋ž˜ ์ผ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • URL์— ๊ทผ๊ฑฐํ•˜์—ฌ, ๋ถ€๋ชจ ์บ์‹œ์™€ ์›์„œ๋ฒ„ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋™์ ์œผ๋กœ ์„ ํƒํ•œ๋‹ค.

  • URL์— ๊ทผ๊ฑฐํ•˜์—ฌ, ํŠน์ • ๋ถ€๋ชจ ์บ์‹œ๋ฅผ ๋™์ ์œผ๋กœ ์„ ํƒํ•œ๋‹ค.

  • ๋ถ€๋ชจ ์บ์‹œ์—๊ฒŒ ๊ฐ€๊ธฐ ์ „์—, ์บ์‹œ๋œ ์‚ฌ๋ณธ์„ ๋กœ์ปฌ์—์„œ ์ฐพ์•„๋ณธ๋‹ค.

  • ๋‹ค๋ฅธ ์บ์‹œ๋“ค์ด ๊ทธ๋“ค์˜ ์บ์‹œ๋œ ์ฝ˜ํ…์ธ ์— ๋ถ€๋ถ„์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๋˜,๊ทธ๋“ค์˜ ์บ์‹œ๋ฅผ ํ†ตํ•œ Internet transit์€ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

ํ˜•์ œ์บ์‹œ: ์„ ํƒ์ ์ธ ํ”ผ์–ด๋ง์„ ์ง€์›ํ•˜๋Š” ์บ์‹œ. HTTP์—์„œ๋Š” ํ˜•์ œ์บ์‹œ๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์•„์„œ ์ธํ„ฐ๋„ท์บ์‹œํ”„๋กœํ† ์ฝœ(ICP), ํ•˜์ดํผํ…์ŠคํŠธ์บ์‹œํ”„๋กœํ† ์ฝœ(HTCP)์„ ์ด์šฉํ•ด HTTP๋ฅผ ํ™•์žฅํ–ˆ๋‹ค.

7) ์บ์‹œ์ฒ˜๋ฆฌ๋‹จ๊ณ„

์›น ์บ์‹œ์˜ ๊ธฐ๋ณธ์ ์ธ ๋™์ž‘ (HTTP GET ๋ฉ”์‹œ์ง€ ํ•˜๋‚˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋ณธ ์บ์‹œ ์ฒ˜๋ฆฌ ์ ˆ์ฐจ)

  1. ์š”์ฒญ๋ฐ›๊ธฐ: ์บ์‹œ๋Š” ๋„คํŠธ์›Œํฌ๋กœ๋ถ€ํ„ฐ ๋„์ฐฉํ•œ ์š”์ฒญ๋ฉ”์‹œ์ง€๋ฅผ ์ฝ๋Š”๋‹ค.

  2. ํŒŒ์‹ฑ: ์บ์‹œ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํŒŒ์‹ฑํ•˜์—ฌ URL๊ณผ ํ—ค๋”๋ฅผ ์ถ”์ถœํ•œ๋‹ค.

  3. ๊ฒ€์ƒ‰: ์บ์‹œ๋Š” ๋กœ์ปฌ์‚ฌ๋ณธ์ด ์žˆ๋Š”์ง€ ๊ฒ€์‚ฌํ•˜๊ณ  ์‚ฌ๋ณธ์ด ์—†๋‹ค๋ฉด ์‚ฌ๋ณธ์„ ๋ฐ›์•„์˜จ๋‹ค. (๊ทธ๋ฆฌ๊ณ  ๋กœ์ปฌ์— ์ €์žฅ)

  4. ์‹ ์„ ๋„ ๊ฒ€์‚ฌ: ์บ์‹œ๋œ ์‚ฌ๋ณธ์ด ์ถฉ๋ถ„ํžˆ ์‹ ์„ ํ•œ์ง€, ์‹ ์„ ํ•˜์ง€ ์•Š๋‹ค๋ฉด ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ์žˆ๋Š”์ง€ ์„œ๋ฒ„์— ๋ฌผ์–ด๋ณธ๋‹ค.

  5. ์‘๋‹ต์ƒ์„ฑ: ์บ์‹œ๋Š” ์ƒˆ๋กœ์šด ํ—ค๋”์™€ ์บ์‹œ๋œ ๋ณธ๋ฌธ์œผ๋กœ ์‘๋‹ต๋ฉ”์„ธ์ง€๋ฅผ ๋งŒ๋“ ๋‹ค.

  6. ๋ฐœ์†ก: ์บ์‹œ๋Š” ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์‘๋‹ต์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋Œ๋ ค์ค€๋‹ค.

  7. ๋กœ๊น…: ์„ ํƒ์ ์œผ๋กœ ์บ์‹œ๋Š” ๋กœ๊ทธํŒŒ์ผ์— ํŠธ๋žœ์žญ์…˜์— ๋Œ€ํ•ด ์„œ์ˆ ํ•œ ๋กœ๊ทธ ํ•˜๋‚˜๋ฅผ ๋‚จ๊ธด๋‹ค.

8) ์‚ฌ๋ณธ ์‹ ์„ ํ•˜๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ

์˜ค๋ž˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์บ์‹œ๋Š” ๋ถˆํ•„์š”ํ•˜๋‹ค. ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๋Š” ์„œ๋ฒ„์˜ ๋ฐ์ดํ„ฐ์™€ ์ผ์น˜๋˜๋„๋ก ๊ด€๋ฆฌ๋˜์•ผํ•œ๋‹ค.

์บ์‹œ๋œ ์‚ฌ๋ณธ๊ณผ ์„œ๋ฒ„๊ฐ€ ์ผ์น˜ํ•˜๋„๋ก ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์ˆœํ•œ ๋งค์ปค๋‹ˆ์ฆ˜์„ ํ™•์ธํ•œ๋‹ค.

โ‘  ๋ฌธ์„œ๋งŒ๋ฃŒ

Cache-Control ๊ณผ Expires๋ผ๋Š” ํŠน๋ณ„ํ•œ ํ—ค๋”๋“ค์„ ์ด์šฉํ•ด ์›์„œ๋ฒ„๊ฐ€ ๊ฐ ๋ฌธ์„œ์— ์œ ํšจ๊ธฐ๊ฐ„์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

์ด ํ—ค๋”๋“ค์€ ์–ผ๋งˆ๋‚˜ ์˜ค๋žซ๋™์•ˆ ์‹ ์„ ํ•œ ์ƒํƒœ๋กœ ๋ณด์ผ ์ˆ˜ ์žˆ๋Š”์ง€ ์ขŒ์šฐํ•œ๋‹ค.

์บ์‹œ ๋ฌธ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜๊ธฐ ์ „์— ์บ์‹œ๋Š” ํ•„์š”ํ•˜๋ฉด ์„œ๋ฒ„ ์ ‘์ด‰์—†์ด ์‚ฌ๋ณธ์ œ๊ณต์ด ๊ฐ€๋Šฅ. [์บ์‹œ๋ฌ๊ฑฐ๋‚˜, ๊ฒ€์ฆ๋˜์ง€ ์•Š์€ ๋ฆฌ์†Œ์Šค ์ œ๊ณต์„ ๊ฑฐ๋ถ€ํ•˜๋Š” ํ—ค๋”๊ฐ€ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ์—†๋Š”๊ฒฝ์šฐ์—๋งŒ]

์บ์‹œ๋œ ๋ฌธ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜๋ฉด ์บ์‹œ๋Š” ๋ฐ˜๋“œ์‹œ ์„œ๋ฒ„์™€ ๋ฌธ์„œ์— ๋ณ€๊ฒฝ๋œ ๊ฒƒ์ด ์žˆ๋Š”์ง€ ๊ฒ€์‚ฌํ•ด์•ผํ•˜๊ณ  ๊ทธ๋ ‡๋‹ค๋ฉด ์‹ ์„ ํ•œ ์‚ฌ๋ณธ์„ ๊ฐ€์ ธ์™€์•ผํ•œ๋‹ค.

์‘๋‹ต ํ—ค๋” ์ถ”๊ฐ€ ์˜ˆ์‹œ) Expires: Fri, 05 Jul 2021, 05:00:00 GMT

Cache-Control: max-age=48200 (์ดˆ)

โ‘ก ์„œ๋ฒ„ ์žฌ๊ฒ€์‚ฌ

์บ์‹œ ๋ฌธ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜์—ˆ๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ์›์„œ๋ฒ„์— ํ˜„์žฌ์กด์žฌํ•˜๋Š” ๊ฒƒ๊ณผ ์‹ค์ œ๋กœ ๋‹ค๋ฅด๋‹ค๋Š” ์˜๋ฏธ๋Š” ์•„๋‹ˆ๋‹ค.

๋‹จ์ง€ ๊ฒ€์‚ฌํ•  ์‹œ๊ฐ„์ด ๋˜์—ˆ์Œ์„ ๋œปํ•˜๋ฉฐ, ์ด ๊ฒ€์‚ฌ๋ฅผ ์บ์‹œ๊ฐ€ ์›์„œ๋ฒ„์—๊ฒŒ ๋ฌธ์„œ๊ฐ€ ๋ณ€๊ฒฝ๋ฌ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฌผ์–ด๋ณผ ํ•„์š”๊ฐ€ ์žˆ์Œ์„ ์˜๋ฏธํ•˜๋Š” '์„œ๋ฒ„ ์žฌ๊ฒ€์‚ฌ' ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

๋งค ์š”์ฒญ๋งˆ๋‹ค ๊ฒ€์ฆํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๋ฌธ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜์—ˆ์„ ๋•Œ์— ํ•œ๋ฒˆ๋งŒ ์„œ๋ฒ„์™€ ์žฌ๊ฒ€์‚ฌ๋ฅผ ํ•˜๋ฉด๋œ๋‹ค.

๋”ฐ๋ผ์„œ ์‹ ์„ ํ•œ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋ฉด์„œ ์„œ๋ฒ„ ํŠธ๋ž˜ํ”ฝ์„ ์ ˆ์•ฝํ•˜๊ณ  ์‚ฌ์šฉ์ž ์‘๋‹ต์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์กฐ๊ฑด๋ถ€ ๋ฉ”์„œ๋“œ์™€์˜ ์žฌ๊ฒ€์‚ฌ

    • ์กฐ๊ฑด๋ถ€ GET ์š”์ฒญ: ์„œ๋ฒ„๊ฐ€ ๊ฐ€์ง„ ๋ฌธ์„œ๊ฐ€ ์บ์‹œ๊ฐ€ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ฒƒ๊ณผ ๋‹ค๋ฅธ ๊ฒฝ์šฐ์—๋งŒ ๊ฐ์ฒด ๋ณธ๋ฌธ์„ ๋‹ฌ๋ผ๊ณ  ํ•œ๋‹ค.

    • GET ์š”์ฒญ๋ฉ”์„ธ์ง€์— ํŠน๋ณ„ํ•œ ์กฐ๊ฑด๋ถ€ ํ—ค๋”๋ฅผ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ์‹œ์ž‘๋จ.(์กฐ๊ฑด์ด ์ฐธ์ธ๊ฒฝ์šฐ์—๋งŒ ๋ฐ˜ํ™˜)

    • 5๊ฐ€์ง€ ์กฐ๊ฑด๋ถ€ ์š”์ฒญ์ด ์žˆ๊ณ , ์ฃผ๋กœ ์กฐ๊ฑด๋ถ€ ํ—ค๋”๋Š” If- ์ ‘๋‘์–ด๋กœ ์‹œ์ž‘ํ•œ๋‹ค.

      • ์บ์‹œ ์žฌ๊ฒ€์‚ฌ ํ—ค๋” ์ค‘ 2๊ฐ€์ง€๊ฐ€ ๊ฐ€์žฅ ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์ธ๋‹ค.

        • If-Modified-Since: <date> (= IMS ์š”์ฒญ)

          • ๋งŒ์•ฝ ๋ฌธ์„œ๊ฐ€ ์ฃผ์–ด์ง„ ๋‚ ์งœ ์ดํ›„๋กœ ์ˆ˜์ •์ด ๋˜์—ˆ๋‹ค๋ฉด ์š”์ฒญ๋ฉ”์„œ๋“œ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค. (200 ok )

          • ์บ์‹œ๋œ ๋ฒ„์ „์œผ๋กœ๋ถ€ํ„ฐ ์ฝ˜ํ…์ธ ๊ฐ€ ๋ณ€๊ฒฝ๋œ ๊ฒฝ์šฐ์—๋งŒ ์ฝ˜ํ…์ธ ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ์œ„ํ•ด Last-Modified ์„œ๋ฒ„ ์‘๋‹ตํ—ค๋”์™€ ํ•จ๊ป˜ ์“ฐ์ธ๋‹ค.

          • ๋งŒ์•ฝ ๋ฌธ์„œ๊ฐ€ ์ฃผ์–ด์ง„ ๋‚ ์งœ ์ดํ›„๋กœ ์ˆ˜์ •์ด ์—†์—ˆ๋‹ค๋ฉด ์กฐ๊ฑด์€ ๊ฑฐ์ง“์ด๊ณ , 304 Not modified ์‘๋‹ต๋ฉ”์„ธ์ง€๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ณด๋‚ธ๋‹ค. ํšจ์œจ์„ ์œ„ํ•ด ๋ณธ๋ฌธ์€ ๋ณด๋‚ด์ง€ ์•Š๊ณ , ๊ฐฑ์‹ ์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๋ณด๋‚ธ๋‹ค. (์˜ˆ: ์ƒˆ๋กœ์šด ๋งŒ๋ฃŒ ๋‚ ์งœ๋งŒ ๋ณด๋‚ธ๋‹ค๋˜๊ฐ€)

        • If-None-Match: <tags>

          • ์ตœ๊ทผ ๋ณ€๊ฒฝ ์ผ์‹œ ์žฌ๊ฒ€์‚ฌ๊ฐ€ ์ ์ ˆํžˆ ํ–‰ํ•ด์ง€๊ธฐ ์–ด๋ ค์šด ์ƒํ™ฉ์— ์‚ฌ์šฉ

          • ์•คํ„ฐํ‹ฐ ํƒœ๊ทธ ๋ณ€๊ฒฝ์‹œ, ์บ์‹œ๋Š” ์ƒˆ ๋ฌธ์„œ์˜ ์‚ฌ๋ณธ์„ ์–ป๊ธฐ(GET) ์œ„ํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

      • ์•ฝํ•œ ๊ฒ€์‚ฌ๊ธฐ์™€ ๊ฐ•ํ•œ ๊ฒ€์‚ฌ๊ธฐ

        • ๊ฐ•ํ•œ ๊ฒ€์‚ฌ๊ธฐ๋Š” ์ฝ˜ํ…์ธ ๊ฐ€ ๋ณ€๊ฒฝ๋ ๋•Œ๋งˆ๋‹ค ๋ฐ”๋€Œ๊ณ , ์•ฝํ•œ ๊ฒ€์‚ฌ๊ธฐ๋Š” ์–ด๋Š์ •๋„ ์ฝ˜ํ…์ธ  ๋ณ€๊ฒฝ์„ ํ—ˆ์šฉํ•œ๋‹ค.

9) ์บ์‹œ ์ œ์–ด

๋ฌธ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜๊ธฐ ์ „๊นŒ์ง€ ์–ผ๋งˆ๋‚˜ ์˜ค๋ž˜ ์บ์‰ฌ๋ ์ˆ˜ ์žˆ๊ฒŒ ํ• ๊ฒƒ์ธ์ง€ ์„œ๋ฒ„๊ฐ€ ์„ค์ •ํ•˜๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ฐฉ๋ฒ•.

  • Cache-Control: no-store ํ—ค๋”๋ฅผ ์‘๋‹ตํ—ค๋”์— ์ฒจ๋ถ€

  • Cache-Control: no-cache ํ—ค๋”๋ฅผ ์‘๋‹ตํ—ค๋”์— ์ฒจ๋ถ€

  • Cache-Control: must-revalidate ํ—ค๋”๋ฅผ ์‘๋‹ตํ—ค๋”์— ์ฒจ๋ถ€

  • Cache-Control: max-age ํ—ค๋”๋ฅผ ์‘๋‹ตํ—ค๋”์— ์ฒจ๋ถ€

  • Expires ๋‚ ์งœ ํ—ค๋”๋ฅผ ์‘๋‹ต์— ์ฒจ๋ถ€

  • ์•„๋ฌด๋Ÿฐ ๋งŒ๋ฃŒ ์ •๋ณด ์—†์ด ์บ์‹œ๊ฐ€ ์Šค์Šค๋กœ ์ฒดํ—˜์ ์ธ(ํœด๋ฆฌ์Šคํ‹ฑ) ๋ฐฉ๋ฒ•์œผ๋กœ ๊ฒฐ์ •

10) ์บ์‹œ ์ œ์–ด ์„ค์ •

์•„ํŒŒ์น˜ ์›น ์„œ๋ฒ„๊ฐ€ ์บ์‹œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ง€์›ํ•˜๋Š”์ง€ ๊ฐ„๋‹จํžˆ ๋ณธ๋‹ค.

Last updated