์บ์ ๊ธฐ๋ณธ ๋์
1.1M(ํค๋+๋ฐ๋)๊ฐ ์ ์ก๋จ.
ํด๋ผ์ด์ธํธ์์ ์์ฒญํ ๋ด์ฉ์ ๋ณด๊ณ ์๋ฒ๊ฐ ์ค์ ์ด๋ฏธ์ง์ ๊ด๋ จ๋ ๋ฐ์ดํธ ์ฝ๋๋ฅผ ํฌํจํ ์๋ต์ ๋ด๋ฆฐ๋ค.
๋ ๋ค์ ์์ฒญํ๋ฉด ์ฒซ ๋ฒ์งธ์ฒ๋ผ ๋๊ฐ์ด 1.1MB์ ์๋ต์ ๋ณด๋ด๊ฒ ๋๊ณ ์บ์๊ฐ ์์ผ๋ฉด ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋์ง ์์๋ ๊ณ์ ๋ฐ์ดํฐ๋ฅผ ๋ค์ด๋ฐ์์ผ ํ๋ค. ๋๊ฐ์ ์์ ์ ๋ฐ๋ณตํ๋ ๊ฒ์ด๋ค.
์บ์๊ฐ ์์ ๋
- ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋์ง ์์๋ ๊ณ์ ๋คํธ์ํฌ๋ฅผ ํตํด์ ๋ฐ์ดํฐ๋ฅผ ๋ค์ด๋ก๋ ๋ฐ์์ผ ํ๋ค.
- ์ธํฐ๋ท ๋คํธ์ํฌ๋ HDD๋ฑ์ ๋นํด์ ์๋์ ์ผ๋ก ๋งค์ฐ ๋๋ฆฌ๊ณ ๋น์ธ๋ค.
- ๋ธ๋ผ์ฐ์ ๋ก๋ฉ ์๋๊ฐ ๋๋ฆฌ๋ค.
- ๋๋ฆฐ ์ฌ์ฉ์ ๊ฒฝํ
์บ์๋ฅผ ์ ์ฉํ๋ค๋ฉด ์ฒ์ ์์ฒญํ์ ๋ ์บ์๊ฐ ์ ํจํ ์๊ฐ์ cache-control์ ์ค์ ํด์ ์๋ต์ ๋ณด๋ธ๋ค.
์น ๋ธ๋ผ์ฐ์ ์๋ ์บ์๋ฅผ ์ ์ฅํ๋ ๊ณต๊ฐ์ด ์์ด์ ์ ํจํ ์๊ฐ๋งํผ ์๋ต ๊ฒฐ๊ณผ๋ฅผ ์บ์์ ์ ์ฅํด๋๋ค.
๋ค์ ์์ฒญํ ๋๋ ์บ์๋ฅผ ์กฐํํ ๋ค ์๊ฐ์ด ์ ํจํ์ง ํ์ธํ๋ค.
์ ํจํ๋ฉด ์๋ฒ๋ก ๊ฐ์ง ์๊ณ ์บ์์์ ๊ฐ์ ธ์จ๋ค.
์บ์ ์ ์ฉ
- ์บ์ ๋๋ถ์ ์บ์ ๊ฐ๋ฅ ์๊ฐ๋์ ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ์ง ์์๋ ๋๋ค.
- ๋น์ผ ๋คํธ์ํฌ ์ฌ์ฉ๋์ ์ค์ผ ์ ์๋ค.
- ๋ธ๋ผ์ฐ์ ๋ก๋ฉ ์๋๊ฐ ๋งค์ฐ ๋น ๋ฅด๋ค.
- ๋น ๋ฅธ ์ฌ์ฉ์ ๊ฒฝํ
๋ง์ฝ ์ ํจ ์๊ฐ์ด ์ด๊ณผ๋๋ค๋ฉด
๋ค์ ์๋ฒ์ ์์ฒญ์ ํ๋ค. ์๋ฒ๋ ๋ค์ ์บ์ ์ ํจ ์๊ฐ์ ๋ด์ ๋ณด๋ธ๋ค. ๋ค์ ๋คํธ์ํฌ ๋ค์ด๋ก๋๊ฐ ๋ฐ์ํ๋ค.
๋ธ๋ผ์ฐ์ ๋ ๊ธฐ์กด ์บ์๋ฅผ ์ง์ฐ๊ณ ์ ์บ์๋ฅผ ๋ฎ์ด ์ด๋ค.
์บ์ ์๊ฐ ์ด๊ณผ
- ์บ์ ์ ํจ ์๊ฐ์ด ์ด๊ณผํ๋ฉด, ์๋ฒ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋ค์ ์กฐํํ๊ณ , ์บ์๋ฅผ ๊ฐฑ์ ํ๋ค.
- ์ด๋ ๋ค์ ๋คํธ์ํฌ ๋ค์ด๋ก๋๊ฐ ๋ฐ์ํ๋ค.
๋ง์ฝ์ ์บ์๋ง๋ฃ๊ฐ ๋์์๋ ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ์ง ๋ฐ์ดํฐ์ ์๋ฒ๊ฐ ๊ฐ์ง ๋ฐ์ดํฐ๊ฐ ๊ฐ๋ค๋ฉด ๊ตณ์ด ์๋ก ๋ค์ด๋ฐ์ ํ์๊ฐ ์์๊น?
๊ฒ์ฆ ํค๋์ ์กฐ๊ฑด๋ถ ์์ฒญ
์บ์ ์ ํจ ์๊ฐ์ด ์ด๊ณผํด์ ์๋ฒ์ ๋ค์ ์์ฒญํ๋ฉด ๋ค์ ๋ ๊ฐ์ง ์ํฉ์ด ๋ํ๋๋ค.
1. ์๋ฒ์์ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํจ
2. ์๋ฒ์์ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ์ง ์์
์บ์ ๋ง๋ฃํ์๋ ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ์ง ์์ ๊ฒฝ์ฐ
- ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋์ ์ ์ ์ฅํด ๋์๋ ์บ์๋ฅผ ์ฌ์ฌ์ฉ ํ ์ ์๋ค.
- ๋จ ํด๋ผ์ด์ธํธ์ ๋ฐ์ดํฐ์ ์๋ฒ์ ๋ฐ์ดํฐ๊ฐ ๊ฐ๋ค๋ ์ฌ์ค์ ํ์ธํ ์ ์๋ ๋ฐฉ๋ฒ์ด ํ์ํ๊ณ , ์ด๋ ๊ฒ์ฆ ํค๋๋ฅผ ์ฌ์ฉํ๋ค.
Last-Modified: ์ฒซ ์์ฒญ์์ ์๋ฒ๊ฐ ๋ฐ์ดํฐ ์ต์ข ์์ ์ผ์ ๋ด์ ์๋ตํ๋ค.
์น ๋ธ๋ผ์ฐ์ ๋ ์ต์ข ์์ ์ผ๊ณผ ํจ๊ป ์๋ต ๊ฒฐ๊ณผ๋ฅผ ์บ์์ ์ ์ฅํ๋ค.
๋ค์ ์์ฒญํ ๋ ์บ์ ์ ํจ ์๊ฐ์ด ์ด๊ณผ๋๋ค๋ฉด
์ต์ข ์์ ์ผ์ด ์๋์ง ํ์ธํ๊ณ if-modified-since ์ ๋ด์ ์๋ฒ์ ๋ณด๋ธ๋ค.
์๋ฒ๋ if-modified-since ๋ฅผ ๋ณด๊ณ ์์ ์ผ์ ๋น๊ตํ๋ค. ๋ง์ฝ ์์ ๋์ง ์์๋ค๋ฉด
์๋ต์ 304 Not Modified ์ Last-Modified๋ฅผ ๋ด์ ๋ณด๋ธ๋ค. Body๋ ๋นผ๊ณ Header๋ง ๋ณด๋ธ๋ค.
0.1MB๋งํผ์ ํค๋๋ง ์ ์ก๋๊ณ ๋คํธ์ํฌ ๋ถํ๊ฐ ํ ์ค์ด๋ ๋ค.
ํด๋ผ์ด์ธํธ๋ 304์ฝ๋๋ฅผ ๋ณด๊ณ ๋ณ๊ฒฝ๋๊ฒ ์์ผ๋ ์จ๋ ๋๋ค๊ณ ์ธ์ํ๊ณ , ์ฌ์ฌ์ฉ ํ๋ฉด์ ํค๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐฑ์ ํ๋ค.
์ ๋ฆฌ
- ์บ์ ์ ํจ ์๊ฐ์ด ์ด๊ณผํด๋, ์๋ฒ์ ๋ฐ์ดํฐ๊ฐ ๊ฐฑ์ ๋์ง ์์ผ๋ฉด 304 Not Modified + ํค๋ ๋ฉํ ์ ๋ณด๋ง ์๋ต
- ํด๋ผ์ด์ธํธ๋ ์๋ฒ๊ฐ ๋ณด๋ธ ์๋ต ํค๋ ์ ๋ณด๋ก ์บ์์ ๋ฉํ ์ ๋ณด๋ฅผ ๊ฐฑ์ ํ๊ณ , ์บ์์ ์ ์ฅ๋์ด ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌํ์ฉํ๋ค.
- ๊ฒฐ๊ณผ์ ์ผ๋ก ๋คํธ์ํฌ ๋ค์ด๋ก๋๊ฐ ๋ฐ์ํ์ง๋ง ์ฉ๋์ด ์ ์ ํค๋ ์ ๋ณด๋ง ๋ค์ด๋ก๋
status์์ 200์ด ์ฐํ์์ด๋ฉด ์บ์์์ ๋ถ๋ฌ์จ ๊ฒ์ด๋ค.
- ๊ฒ์ฆ ํค๋
์บ์ ๋ฐ์ดํฐ์ ์๋ฒ ๋ฐ์ดํฐ๊ฐ ๊ฐ์์ง ๊ฒ์ฆํ๋ ๋ฐ์ดํฐ
Last-Modified , ETag
- ์กฐ๊ฑด๋ถ ์์ฒญ ํค๋
๊ฒ์ฆ ํค๋๋ก ์กฐ๊ฑด์ ๋ฐ๋ฅธ ๋ถ๊ธฐ
If-Modified-Since: Last-Modified ์ฌ์ฉ
If-None-Match: ETag ์ฌ์ฉ
์กฐ๊ฑด์ด ๋ง์กฑํ๋ฉด 200 OK
์กฐ๊ฑด์ด ๋ง์กฑํ์ง ์์ผ๋ฉด 304 Not Modified
If-Modified-Since: ์ดํ์ ๋ฐ์ดํฐ๊ฐ ์์ ๋์์ผ๋ฉด?
- ๋ฐ์ดํฐ ๋ฏธ๋ณ๊ฒฝ ์์
์บ์: 2020๋
11์ 10์ผ 10:00:00 vs ์๋ฒ: 2020๋
11์ 10์ผ 10:00:00
304 Not Modified(์บ์๋ก ๋ฆฌ๋ค์ด๋ ์ ํด๋ผ), ํค๋ ๋ฐ์ดํฐ๋ง ์ ์ก(BODY ๋ฏธํฌํจ)
์ ์ก ์ฉ๋ 0.1M (ํค๋ 0.1M)
- ๋ฐ์ดํฐ ๋ณ๊ฒฝ ์์
์บ์: 2020๋
11์ 10์ผ 10:00:00 vs ์๋ฒ: 2020๋
11์ 10์ผ 11:00:00
200 OK, ๋ชจ๋ ๋ฐ์ดํฐ ์ ์ก(BODY ํฌํจ)
์ ์ก ์ฉ๋ 1.1M (ํค๋ 0.1M, ๋ฐ๋ 1.0M)
Last-Modified, If-Modified-Since ๋จ์
1์ด ๋ฏธ๋ง(0.x์ด) ๋จ์๋ก ์บ์ ์กฐ์ ์ด ๋ถ๊ฐ๋ฅ
๋ ์ง ๊ธฐ๋ฐ์ ์ ํด์ง ๋ก์ง ์ฌ์ฉํ๋ค. a๋ฅผ b๋ก ์์ ํ๋ค๊ฐ ๋ค์ a๊ฐ ๋๋ ๊ฒฝ์ฐ๋ ๋ค์ด๋ฐ์์ผํ๋ค.
ETag, If-None-Match
- ETag(Entity Tag)
- ์บ์์ฉ ๋ฐ์ดํฐ์ ์์์ ๊ณ ์ ํ ๋ฒ์ ์ด๋ฆ์ ๋ฌ์๋
์) ETag: "v1.0",
ETag: "a2jiodwjekjl3"
- ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋๋ฉด ์ด ์ด๋ฆ์ ๋ฐ๊พธ์ด์ ๋ณ๊ฒฝํจ(Hash๋ฅผ ๋ค์ ์์ฑ)
์) ETag: "aaaaa" -> ETag: "bbbbb"
- ๋จ์ํ๊ฒ ETag๋ง ๋ณด๋ด์ ๊ฐ์ผ๋ฉด ์ ์ง, ๋ค๋ฅด๋ฉด ๋ค์ ๋ฐ๊ธฐ!
์ฒซ ์์ฒญ์ ์๋ตํ ๋ ETag๋ฅผ ๋ด์ ๋ณด๋ธ๋ค.
์น ๋ธ๋ผ์ฐ์ ๋ ETag ๊ฐ์ ์บ์์ ์ ์ฅํ๋ค.
์๊ฐ์ด ์ด๊ณผ๋๋ค๋ฉด if-none-match์ ETag ๊ฐ์ ๋ด์ ์์ฒญํ๋ค.
๋ฐ์ดํฐ๊ฐ ์์ ๋์ง ์์์ผ๋ฏ๋ก ์ฆ, none-match ์กฐ๊ฑด์ ๋ง์กฑํ์ง ์์์ผ๋ฏ๋ก ์คํจ(ํท๊ฐ๋ฆฌ์ง๋ง ์คํจ๊ฐ ๋ง๋ค)
body ์์ด 304 Not Modified๋ฅผ ์๋ตํ๋ค. Body ์ ์ก ์ํจ.
ํด๋ผ์ด์ธํธ๋ ํค๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐฑ์ ํ๊ณ
์บ์์์ ์ฌ์ฌ์ฉํ๋ค.
์ ๋ฆฌํ๋ฉด
๋จ์ํ๊ฒ ETag๋ง ์๋ฒ์ ๋ณด๋ด์ ๊ฐ์ผ๋ฉด ์ ์ง, ๋ค๋ฅด๋ฉด ๋ค์ ๋ฐ๋๋ค.
์บ์ ์ ์ด ๋ก์ง์ ์๋ฒ์์ ์์ ํ ๊ด๋ฆฌํ๋ฉฐ, ํด๋ผ์ด์ธํธ๋ ๋จ์ํ ETag ๊ฐ์ ์ ๊ณตํ ๋ฟ ์บ์ ๋ฉ์ปค๋์ฆ์ ๋ชจ๋ฅธ๋ค.
์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ ์ฃผ๊ธฐ์ ๋ง์ถฐ ETag๋ฅผ ๊ฐฑ์ ํ๋ ๋ฑ์ ์ฌ์ฉํ ์ ์๋ค.
์บ์ ์ ์ด ํค๋์ ์กฐ๊ฑด๋ถ ์์ฒญ ํค๋
์บ์ ์ ์ด ํค๋
- Cache-Control: ์บ์ ์ ์ด
- Pragma: ์บ์ ์ ์ด(ํ์ ํธํ)
- Expires: ์บ์ ์ ํจ ๊ธฐ๊ฐ(ํ์ ํธํ)
1. Cache-Control = ์บ์ ์ง์์ด(directives)
- Cache-Control: max-age
์บ์ ์ ํจ ์๊ฐ, ์ด ๋จ์๋ก ์ค์ ํ๋ค.
- Cache-Control: no-cache
๋ฐ์ดํฐ๋ฅผ ์บ์ํด๋ ๋์ง๋ง, ํญ์ origin ์๋ฒ์ ๋ฐ๋์๋์ง ๊ฒ์ฆํ๊ณ ์ฌ์ฉํ๋ค.
์ค๊ฐ์ ์๋ฒ๊ฐ ์๋๋ฐ, ์ค๊ฐ์๋ฒ์์ ํ๋๊ฒ ์๋๋ผ ๋ค์ ์๋ origin ์๋ฒ์ ๊ฐ์ผํ๋ค.
- Cache-Control: no-store
๋ฐ์ดํฐ์ ๋ฏผ๊ฐํ ์ ๋ณด๊ฐ ์์ผ๋ฏ๋ก ์ ์ฅํ๋ฉด ์๋๋ค. ๋ฉ๋ชจ๋ฆฌ์์ ์ฌ์ฉํ๊ณ ์ต๋ํ ๋นจ๋ฆฌ ์ญ์ ํ๋ค.
2. Pragma
์บ์ ์ ์ด(ํ์ ํธํ)
- Pragma: no-cache
- HTTP 1.0 ํ์ ํธํ
3. Expires
์บ์ ๋ง๋ฃ์ผ ์ง์ (ํ์ ํธํ)
expires: Mon, 01 Jan 1990 00:00:00 GMT
์บ์ ๋ง๋ฃ์ผ์ ์ด๋จ์๊ฐ ์๋๋ผ ์ ํํ ๋ ์ง๋ก ์ง์ ํ๋ค.
HTTP 1.0 ๋ถํฐ ์ฌ์ฉํ๋ฉฐ ์ง๊ธ์ ์ด ๋จ์์ธ Cache-Control: max-age๋ฅผ ๊ถ์ฅํ๋ค.
Cache-Control: max-age์ ํจ๊ป ์ฌ์ฉํ๋ฉด Expires๋ ๋ฌด์ํ๋ค.
- ๊ฒ์ฆ ํค๋ (Validator)
ETag์ Last-Modified ๊ฐ ์กด์ฌํ๋ค.
์กฐ๊ฑด๋ถ ์์ฒญ ํค๋
If-Match, If-None-Match: ETag ๊ฐ ์ฌ์ฉ
If-Modified-Since, If-Unmodified-Since: Last-Modified ๊ฐ ์ฌ์ฉ
ํ๋ก์ ์บ์
ํด๋ผ์ด์ธํธ๊ฐ ๋ฏธ๊ตญ์ ์๋ ์๋ฒ์ ์ ๊ทผํ๋ค๋ฉด ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฐ๋ค. ๊ธฐ๋ค๋ ค์ผ ํ๋ค.
์ค๊ฐ์ ํ๋ก์ ์บ์ ์๋ฒ๋ฅผ ๋๋ค. CDN ์๋น์ค๋ผ๊ณ ํ๋ฉฐ ๋ํ์ ์ธ ๊ฒ์ด AWS Cloud Front๋ค.
์์ฒญ์ด ์ค๋ฉด ์ ์๋ฒ๊ฐ ์๋๋ผ ํ๊ตญ์ ์๋ ํ๋ก์ ์บ์ ์๋ฒ๋ฅผ ๊ฑฐ์น๋ค. ์ข ๋ ๊ฐ๊น์ด ์์ผ๋ฏ๋ก ์๋ต ์๊ฐ์ด ๋นจ๋ผ์ง๋ค. ์ฒ์ ์์ฒญํ ์ ์ ๋ ๋๋ฆฌ์ง๋ง ๊ทธ ๋ค์ ์์ฒญํ ์ ์ ๋ ๋น ๋ฅด๊ฒ ์ฌ์ฉํ ์ ์๋ค.
์๋ฅผ ๋ค์ด, ์ธ๊ตญ ์ ํ๋ฒ์ ์ปจํ ์ธ ๋ฅผ ๋ณผ ๋, ํ๊ตญ ์ฌ๋๋ค์ด ์์ฃผ ๋ณด๋ ์ปจํ ์ธ ์ ๊ฒฝ์ฐ ๋ก๋ฉ์ด ๋น ๋ฅธ๋ฐ ์ด๋ ํ๊ตญ ์ด๋๊ฐ์ ์๋ ์๋ฒ์์ ๋ถ๋ฌ์ค๊ธฐ ๋๋ฌธ์ด๋ค.
ํ๋ก์ ์บ์ ์๋ฒ์ฒ๋ผ ๊ณต์ฉ์ผ๋ก ์ฌ์ฉํ๋ ๊ณณ์ public ์บ์, ๋ก์ปฌ์์ ์ฌ์ฉํ๋ ์น ๋ธ๋ผ์ฐ์ ์บ์๋ private ์บ์๋ผ๊ณ ํ๋ค.
Cache-Control
์บ์ ์ง์์ด(directives) - ๊ธฐํ
- Cache-Control: public
์๋ต์ด public ์บ์์ ์ ์ฅ๋์ด๋ ๋๋ค.
- Cache-Control: private
๊ธฐ๋ณธ ๊ฐ, ๋ก๊ทธ์ธ ์ ๋ณด์ ๊ฐ์ ์๋ต์ด ํด๋น ์ฌ์ฉ์๋ง์ ์ํ ๊ฒ์ด๋ฏ๋ก private ์บ์์ ์ ์ฅํด์ผ ํ๋ค.
์๋ ๋๊ฐ๋ ์ด๋ฐ๊ฒ ์๋ค ์ ๋๋ก๋ง ์์.
- Cache-Control: s-maxage
ํ๋ก์ ์บ์์๋ง ์ ์ฉ๋๋ max-age
- Age: 60 (HTTP ํค๋)
์ค๋ฆฌ์ง ์๋ฒ์์ ์๋ต ํ ํ๋ก์ ์บ์ ๋ด์ ๋จธ๋ฌธ ์๊ฐ(์ด)
์บ์ ๋ฌดํจํ
ํ์คํ ์บ์ ๋ฌดํจํ ์๋ต
- Cache-Control: no-cache, no-store, must-revalidate
- Pragma: no-cache (HTTP 1.0 ํ์ ํธํ์ด ์ฌ ์ ์์ผ๋ฏ๋ก)
์ค์ ๊ณผ ๊ด๊ณ ์์ด ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์์๋ก ์บ์๋ฅผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋๋ฐ ์ด๋ฅผ ๋ง๊ธฐ ์ํ ์ค์ ์ด๋ค.
์บ์ ์ง์์ด(directives) - ํ์คํ ์บ์ ๋ฌดํจํ
- Cache-Control: no-cache
์ด๋ฆ๊ณผ ๋ฌ๋ฆฌ ๋ฐ์ดํฐ๋ ์บ์ํด๋ ๋์ง๋ง, ํญ์ ์ ์๋ฒ์ ๊ฒ์ฆํ๊ณ ์ฌ์ฉ
- Cache-Control: no-store
๋ฐ์ดํฐ์ ๋ฏผ๊ฐํ ์ ๋ณด๊ฐ ์์ผ๋ฏ๋ก ์ ์ฅํ๋ฉด ์๋จ(๋ฉ๋ชจ๋ฆฌ์์ ์ฌ์ฉํ๊ณ ์ต๋ํ ๋นจ๋ฆฌ ์ญ์ )
- Cache-Control: must-revalidate
์บ์ ๋ง๋ฃํ ์ต์ด ์กฐํ์ ์ ์๋ฒ์ ๊ฒ์ฆํด์ผํจ
์ ์๋ฒ ์ ๊ทผ ์คํจ์ ๋ฐ๋์ ์ค๋ฅ๊ฐ ๋ฐ์ํด์ผํจ - 504(Gateway Timeout)
must-revalidate๋ ์บ์ ์ ํจ ์๊ฐ์ด๋ผ๋ฉด ์บ์๋ฅผ ์ฌ์ฉํจ
- Pragma: no-cache
HTTP 1.0 ํ์ ํธํ์ ์ํด ์ฌ์ฉ
ํด๋ผ์ด์ธํธ๊ฐ no-cache๋ก ์๋ฒ์ ์์ฒญํ๋ฉด ํ๋ก์ ์๋ฒ๋ no-cache์ด๋ฏ๋ก ์ ์๋ฒ์ ์์ฒญ์ ์ ๋ฌํ๋ค.
์ ์๋ฒ๋ ์ ์ ํ ์๋ต์ ๋ด๋ ค์ค๋ค.
ํ๋ก์ ์บ์ ์๋ฒ๊ฐ ์ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ด์ผํ๋๋ฐ ์๊ฐ์ ์ผ๋ก ๋คํธ์ํฌ๊ฐ ๋จ์ ๋์ด ์ ๊ทผ์ด ๋ถ๊ฐํ๋ค๋ฉด ์ค์ ์ ๋ฐ๋ผ ํ๋ก์ ์๋ฒ์์ ์บ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ ์ ์๋ค.
must-revalidate๋ผ๋ฉด ์ ์๋ฒ์ ์ ๊ทผ์ด ๋ถ๊ฐํ ๋ 504 Gateway Timeout ์ค๋ฅ๋ฅผ ๋ณด๋ธ๋ค.
์๋ฅผ๋ค์ด ํต์ฅ ์๊ณ ๋ฑ ์ค์ํ ์ ๋ณด๊ฐ ์ ์๋ฒ๋ฅผ ๋ชป ํ๋ค๊ณ ํด์ ์์ ๋ฐ์ดํฐ๋ก ๋ฌ๋ค๋ฉด ํฐ ๋ฌธ์ ๊ฐ ์๊ธฐ๊ฒ ๋๊ณ , must-revalidate๋ฅผ ์จ์ผ ํ๋ค.
'๐ผ ๋ฐฑ์ค๋ > HTTP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
9. JSON (1) | 2024.01.09 |
---|---|
7. HTTP ํค๋ - ์ผ๋ฐํค๋ (0) | 2024.01.09 |
6. HTTP ์ํ ์ฝ๋ (1) | 2024.01.09 |
5. HTTP ๋ฉ์๋ ํ์ฉ (1) | 2024.01.09 |
4. HTTP API ๋ฉ์๋ (2) | 2024.01.09 |