๐ŸŒ AWS CloudFront: ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•œ ์ฝ˜ํ…์ธ  ์ „์†ก์˜ ๋น„๋ฐ€ ๐Ÿš€

์„ํ˜„ยท2025๋…„ 1์›” 27์ผ
0

Insight

๋ชฉ๋ก ๋ณด๊ธฐ
10/43
post-thumbnail

์˜ค๋Š˜์˜ ์ด์•ผ๊ธฐ

์ตœ๊ทผ ํ”„๋กœ์ ํŠธ ๊ธ€๋กœ๋ฒŒ ํ”„๋กœ์ ํŠธ์—์„œ ๊ฐ ๋ฆฌ์ „์˜ ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ๋” ๋น ๋ฅด๊ณ  ์•ˆ์ •์ ์ธ ์ •์  ์ฝ˜ํ…์ธ  ์ „๋‹ฌ ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€, AWS CloudFront๋ฅผ ๋‹ค์‹œ ์‚ดํŽด๋ณด๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค (์ฑ„ํƒ ๐Ÿ‘). CloudFront๋Š” AWS์˜ ์ฝ˜ํ…์ธ  ์ „์†ก ๋„คํŠธ์›Œํฌ(Content Delivery Network, CDN) ์„œ๋น„์Šค๋กœ, ์ „ ์„ธ๊ณ„ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ ์ฝ˜ํ…์ธ ๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” CloudFront์˜ ์ž‘๋™ ์›๋ฆฌ์™€ ์„ค์ • ๋ฐฉ๋ฒ•, ๊ทธ๋ฆฌ๊ณ  ์œ ์šฉํ•œ ํ™œ์šฉ ํŒ์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


AWS CloudFront๋ž€? ๐ŸŒ

AWS CloudFront๋Š” Amazon Web Services(AWS)์—์„œ ์ œ๊ณตํ•˜๋Š” CDN ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ ์—ฃ์ง€ ์„œ๋ฒ„(Edge Server)๋ฅผ ํ™œ์šฉํ•˜์—ฌ, ์‚ฌ์šฉ์ž์™€ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์œ„์น˜์—์„œ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  ์„ฑ๋Šฅ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

์ฃผ์š” ๊ฐœ๋… ๐Ÿงฉ

  • ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„(Origin Server): ์›๋ณธ ์ฝ˜ํ…์ธ ๋ฅผ ์ €์žฅํ•˜๋Š” ์„œ๋ฒ„๋กœ, AWS์˜ S3 ๋ฒ„ํ‚ท, EC2 ์ธ์Šคํ„ด์Šค, ํ˜น์€ ์˜จํ”„๋ ˆ๋ฏธ์Šค ์„œ๋ฒ„๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์—ฃ์ง€ ์„œ๋ฒ„(Edge Server): ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ ์บ์‹œ ์„œ๋ฒ„๋กœ, ์‚ฌ์šฉ์ž์™€ ๊ฐ€๊นŒ์šด ์œ„์น˜์—์„œ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์บ์‹œ(Cache): ์—ฃ์ง€ ์„œ๋ฒ„์— ์ €์žฅ๋œ ์ฝ˜ํ…์ธ  ๋ณต์‚ฌ๋ณธ์œผ๋กœ, ๋™์ผ ์š”์ฒญ์— ๋Œ€ํ•ด ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ฝ˜ํ…์ธ ๋ฅผ ์žฌ์š”์ฒญํ•˜์ง€ ์•Š๊ณ  ๋น ๋ฅด๊ฒŒ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

CloudFront์˜ ์ž‘๋™ ์›๋ฆฌ ๐Ÿ”„

  1. ์‚ฌ์šฉ์ž ์š”์ฒญ: ํด๋ผ์ด์–ธํŠธ(์‚ฌ์šฉ์ž)๊ฐ€ ํŠน์ • ์ฝ˜ํ…์ธ ๋ฅผ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.

  2. ์—ฃ์ง€ ์„œ๋ฒ„ ํ™•์ธ: ์š”์ฒญ์ด ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์—ฃ์ง€ ์„œ๋ฒ„๋กœ ์ „๋‹ฌ๋˜๋ฉฐ, ํ•ด๋‹น ์„œ๋ฒ„๋Š” ์š”์ฒญ๋œ ์ฝ˜ํ…์ธ ์˜ ์บ์‹œ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    • ์บ์‹œ ํžˆํŠธ(Cache Hit): ์ฝ˜ํ…์ธ ๊ฐ€ ์บ์‹œ์— ์กด์žฌํ•˜๋ฉด ์ฆ‰์‹œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.
    • ์บ์‹œ ๋ฏธ์Šค(Cache Miss): ์ฝ˜ํ…์ธ ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ, ์—ฃ์ง€ ์„œ๋ฒ„๋Š” ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„์— ์š”์ฒญ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.!
  3. ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„ ์‘๋‹ต: ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ๋œ ์ฝ˜ํ…์ธ ๋ฅผ ์—ฃ์ง€ ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

  4. ์บ์‹œ ์ €์žฅ ๋ฐ ์ „๋‹ฌ: ์—ฃ์ง€ ์„œ๋ฒ„๋Š” ๋ฐ›์€ ์ฝ˜ํ…์ธ ๋ฅผ ์บ์‹œ์— ์ €์žฅํ•˜๊ณ  ์ด๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.


CloudFront์˜ ์ฃผ์š” ํ™œ์šฉ ๐Ÿ“ฆ

1. ์ •์  ์ฝ˜ํ…์ธ  ์ „์†ก

HTML, CSS, JavaScript, ์ด๋ฏธ์ง€ ๋“ฑ ์ •์  ํŒŒ์ผ์„ ์‚ฌ์šฉ์ž์™€ ๊ฐ€๊นŒ์šด ์—ฃ์ง€ ์„œ๋ฒ„์—์„œ ๋น ๋ฅด๊ฒŒ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

2. ๋™์  ์ฝ˜ํ…์ธ  ์ „์†ก

API ์‘๋‹ต, ๋™์  ์›น ํŽ˜์ด์ง€ ๋“ฑ ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„์˜ ๋™์  ์ฝ˜ํ…์ธ ๋ฅผ ์ง€์—ฐ ์‹œ๊ฐ„ ์—†์ด ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

3. ๋ฏธ๋””์–ด ์ŠคํŠธ๋ฆฌ๋ฐ

๋™์˜์ƒ๊ณผ ๊ฐ™์€ ๋Œ€์šฉ๋Ÿ‰ ๋ฏธ๋””์–ด ํŒŒ์ผ์„ ์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ์œผ๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.


CloudFront ์„ค์ • ๋ฐฉ๋ฒ• ๐Ÿ› ๏ธ

AWS Management Console์—์„œ CloudFront๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ธฐ๋ณธ ๋‹จ๊ณ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. CloudFront ๋ฐฐํฌ ์ƒ์„ฑ: CloudFront ์ฝ˜์†”์—์„œ 'Create Distribution'์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  2. ์˜ค๋ฆฌ์ง„ ์„ค์ •: ์˜ค๋ฆฌ์ง„ ๋„๋ฉ”์ธ์— S3 ๋ฒ„ํ‚ท, EC2 ์ธ์Šคํ„ด์Šค ๋˜๋Š” ๋‹ค๋ฅธ ์„œ๋ฒ„์˜ ๋„๋ฉ”์ธ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  3. ์บ์‹œ ๋™์ž‘ ์„ค์ •: HTTP ๋ฉ”์„œ๋“œ(GET, POST ๋“ฑ), ์บ์‹œ TTL(Time to Live) ๋“ฑ์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  4. SSL/TLS ์„ค์ •: HTTPS๋ฅผ ํ†ตํ•ด ์•ˆ์ „ํ•œ ์ฝ˜ํ…์ธ  ์ „์†ก์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  5. ๋ฐฐํฌ ์™„๋ฃŒ: ์„ค์ •์„ ์™„๋ฃŒํ•˜๊ณ  'Create Distribution'์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ๋ฐฐํฌ๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉด ์ œ๊ณต๋œ ๋„๋ฉ”์ธ ์ด๋ฆ„์œผ๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ์ง€์—ญ์—๋งŒ ์ฝ˜ํ…์ธ  ์ œ๊ณตํ•˜๊ธฐ ๐ŸŒ

CloudFront๋Š” ์—ฃ์ง€ ๋กœ์ผ€์ด์…˜(Edge Location) ์„ค์ •์„ ํ†ตํ•ด ํŠน์ • ์ง€์—ญ์—๋งŒ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๊ฑฐ๋‚˜ ์ง€์—ญ๋ณ„ ์ ‘๊ทผ์„ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์ • ๋ฐฉ๋ฒ•:

  1. Geo Restriction ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
  2. ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ์ฐจ๋‹จํ•  ๊ตญ๊ฐ€ ๋ชฉ๋ก์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  3. ์„ค์ •๋œ ์ •์ฑ…์— ๋”ฐ๋ผ ํŠน์ • ์ง€์—ญ์—์„œ๋งŒ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์บ์‹œ ์„ค์ • ๋ฐ ๋ฌดํšจํ™” ๐Ÿ’ก

์บ์‹œ TTL ์„ค์ •

CloudFront์˜ ์บ์‹œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ 24์‹œ๊ฐ„ ๋™์•ˆ ์œ ์ง€๋˜๋ฉฐ, ์บ์‹œ TTL ์„ค์ •์„ ํ†ตํ•ด ์ด ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์บ์‹œ ๋ฌดํšจํ™”

๋ฌดํšจํ™” API(Invalidation API)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ํŒŒ์ผ์„ ์บ์‹œ์—์„œ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„์˜ ์ตœ์‹  ์ฝ˜ํ…์ธ ๋ฅผ ๋น ๋ฅด๊ฒŒ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

aws cloudfront create-invalidation \
    --distribution-id E12345ABCDEF \
    --paths "/index.html"

CloudFront ๋น„์šฉ ๐Ÿ“Š

CloudFront์˜ ๋น„์šฉ์€ ๋‹ค์Œ ์š”์†Œ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค:

  1. ๋ฐ์ดํ„ฐ ์ „์†ก๋Ÿ‰: ์—ฃ์ง€ ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „์†ก๋œ ๋ฐ์ดํ„ฐ์˜ ์–‘์— ๋”ฐ๋ผ ์š”๊ธˆ์ด ๋ถ€๊ณผ๋ฉ๋‹ˆ๋‹ค.
  2. HTTP/HTTPS ์š”์ฒญ ์ˆ˜: ์š”์ฒญ ์ˆ˜๊ฐ€ ๋งŽ์„์ˆ˜๋ก ๋น„์šฉ์ด ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ฌดํšจํ™” ์š”์ฒญ: ์บ์‹œ ๋ฌดํšจํ™” ์š”์ฒญ์€ ์ถ”๊ฐ€ ๋น„์šฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์ง€์—ญ๋ณ„ ์š”๊ธˆ ์ฐจ๋“ฑ: ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ง€์—ญ์— ๋”ฐ๋ผ ์š”๊ธˆ์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Tip: Geo Restriction์„ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ์ง€์—ญ์—์„œ๋งŒ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋ฉด ๋น„์šฉ์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜น์€ AWS๋ฅผ ๋ฉ”๊ฐ€์กด ๋˜๋Š” ๋ฒ ์Šคํ•€ ๋“ฑ๋“ฑ MSP๋ฅผ ํ†ตํ•ด AWS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ํ• ์ธ ์ •์ฑ…์ด ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์œผ๋‹ˆ ํ™•์ธํ•ด๋ณด๋ฉด ์ข‹์„๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ ์ตœ์ ํ™” ๋ฐฉ๋ฒ• (์ค‘์š”!)

  • ์ž์ฃผ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ์ฝ˜ํ…์ธ ๋Š” ์บ์‹œ TTL์„ ๊ธธ๊ฒŒ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์บ์‹œ ๋ฌดํšจํ™”๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฃ์ง€ ๋กœ์ผ€์ด์…˜ ์„ค์ •์„ ํ†ตํ•ด ๋น„์šฉ์ด ๋†’์€ ์ง€์—ญ์„ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.

CloudFront์˜ ์žฅ๋‹จ์  โš–๏ธ

์žฅ์ 

  • ๊ธ€๋กœ๋ฒŒ ์—ฃ์ง€ ์„œ๋ฒ„๋ฅผ ํ†ตํ•œ ๋‚ฎ์€ ์ง€์—ฐ ์‹œ๊ฐ„
  • HTTPS๋ฅผ ํ†ตํ•œ ๋ณด์•ˆ ๊ฐ•ํ™”
  • ๋‹ค์–‘ํ•œ ์ฝ˜ํ…์ธ  ์œ ํ˜• ์ง€์›

๋‹จ์ 

  • ์ดˆ๊ธฐ ์„ค์ • ๋ณต์žก์„ฑ
  • ์บ์‹œ ๋ฌดํšจํ™” ๋น„์šฉ ๋ฐœ์ƒ ๊ฐ€๋Šฅ

๋งˆ์น˜๋ฉฐ ๐ŸŒŸ

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

์—ฌ๋Ÿฌ๋ถ„๋„ ํ”„๋กœ์ ํŠธ์—์„œ CloudFront๋ฅผ ํ™œ์šฉํ•ด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ•œ ๋‹จ๊ณ„ ์—…๊ทธ๋ ˆ์ด๋“œํ•ด๋ณด์„ธ์š”! ๐Ÿš€


ํƒœ๊ทธ: AWS, CloudFront, CDN, ์›น ์„ฑ๋Šฅ, ์ฝ˜ํ…์ธ  ์ „์†ก, ๋น„์šฉ ๊ด€๋ฆฌ

0๊ฐœ์˜ ๋Œ“๊ธ€