์œ ํŠœ๋ธŒ URL์€ youtube.com์ด๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์œ ํŠœ๋ธŒ ์ธ๋„ค์ผ URL์€ ์™œ i.ytimg.com๋กœ ์‹œ์ž‘ํ• ๊นŒ?

์ •์  ๋ฆฌ์†Œ์Šค๋ž€?

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

์ •์  ๋ฆฌ์†Œ์Šค๋Š” ๋‹จ์ˆœํžˆ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์—ฌ์ง€๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์— ํ•œ์ •๋˜๋ฏ€๋กœ, ๋ณต์žกํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์—†์ด ์‹ ์†ํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ์ „๋‹ฌ๋˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜๋‹ค.

์ •์  ๋ฆฌ์†Œ์Šค ์ „์šฉ ๋„๋ฉ”์ธ ์šด์˜ ์‚ฌ๋ก€

  • ์œ ํŠœ๋ธŒ. ์˜์ƒ ์ธ๋„ค์ผ์ด ytimg.com์—์„œ ํ˜ธ์ŠคํŒ…๋œ๋‹ค.
  • ๋„ค์ด๋ฒ„. pstatic.net์ด๋ผ๋Š” ๋„๋ฉ”์ธ์„ ์‚ฌ์šฉ ์ค‘์ด๋‹ค.
  • ์Šคํƒ ์˜ค๋ฒ„ํ”Œ๋Ÿฌ์šฐ & ์Šคํƒ ์ต์Šค์ฒด์ธ์ง€. sstatic.net๋ฅผ ๊ณต์œ ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.
  • ์• ํ”Œ ์›น์‚ฌ์ดํŠธ. cdn-apple.com๋ฅผ ์‚ฌ์šฉ ์ค‘์ด๋‹ค.
  • ๊นƒํ—ˆ๋ธŒ. githubusercontent.com์™€ githubassets.com๋ฅผ ์‚ฌ์šฉ ์ค‘์ด๋‹ค.

์ด์œ : ์ฟ ํ‚ค์— ์˜ํ•œ ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ตœ์ ํ™”

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

์˜ˆ๋ฅผ ๋“ค์–ด, ์œ ์ €์˜ ์ธ์ฆ ์ •๋ณด๋ฅผ example.com ๋„๋ฉ”์ธ ์ฟ ํ‚ค๋กœ ๊ด€๋ฆฌํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž:

GET /login HTTP/1.1
Host: example.com

POST /login/submit HTTP/1.1
Host: example.com

GET /post/25 HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /post/25/comment/submit HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

์ฟ ํ‚ค๊ฐ€ ํ•œ ๋ฒˆ ์„ค์ •๋˜๋ฉด ํ•ด๋‹น ๋„๋ฉ”์ธ์— ์ด๋ฃจ์–ด์ง€๋Š” ๋ชจ๋“  ์š”์ฒญ์— ์ž๋™์œผ๋กœ ํฌํ•จ๋˜์–ด ์ „์†ก๋˜๋ฏ€๋กœ, ๋‹จ์ˆœ ์ด๋ฏธ์ง€์™€ ๊ฐ™์€ ์ •์  ๋ฆฌ์†Œ์Šค ์š”์ฒญ ์‹œ์—๋„ ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•จ๊ป˜ ์†ก์‹ ๋˜์–ด ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ์„ ์ฆ๊ฐ€์‹œํ‚ฌ ์šฐ๋ ค๊ฐ€ ์žˆ๋‹ค.

GET /post/25 HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /images/logo.png HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /images/facebook-icon.png HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /images/github-icon.png HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

๋ฐ˜๋ฉด, ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋„๋ฉ”์ธ์„ ๋ณ„๋„๋กœ ์„ค์ •ํ•  ๊ฒฝ์šฐ, ์•„๋ž˜์™€ ๊ฐ™์ด ์ฟ ํ‚ค ์ „์†ก์ด ๋ฐฐ์ œ๋˜์–ด ๋ถˆํ•„์š”ํ•œ ํŠธ๋ž˜ํ”ฝ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค:

GET /post/25 HTTP/1.1
Host: example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /images/logo.png HTTP/1.1
Host: example-cdn-server.com

๋ฌผ๋ก , ์ฟ ํ‚ค์˜ โ€˜pathโ€™ ์†์„ฑ์ด๋‚˜ ์„œ๋ธŒ๋„๋ฉ”์ธ์— ํ•œ์ •์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ๋„ ์ฟ ํ‚ค ์ „์†ก์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋‹ค.

GET /post/25 HTTP/1.1
Host: blog.example.com
Cookie: PHPSESSID=298zf09hf012fh2; 

GET /images/logo.png HTTP/1.1
Host: cdn.example.com

ํ•˜์ง€๋งŒ ์‹ค๋ฌด์—์„œ๋Š” ํ•˜๋‚˜์˜ ๋„๋ฉ”์ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์ˆ˜์˜ ์„œ๋ธŒ๋„๋ฉ”์ธ ๊ฐ„์— ์ธ์ฆ ์„ธ์…˜์„ ๊ณต์œ ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ธฐ์— ์ •์  ๋ฆฌ์†Œ์Šค ์ „์šฉ ๋„๋ฉ”์ธ์„ ๋ณ„๋„ ๋งˆ๋ จํ•˜๋Š” ๊ฒƒ์ด ๋ณดํŽธ์ ์ธ ๋Œ€์ฑ…์ด๋ผ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ฒฐ๋ก 

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

์ฐธ๊ณ ์ž๋ฃŒ

IETF - RFC 6265: HTTP State Management Mechanism

yahoo! developer - Best Practices for Speeding Up Your Web Site

MDN Web Docs - Content Delivery Network