Q83. AWS CloudFront로 글로벌 웹사이트 성능 최적화하기
AWS 자격증을 준비하는 여러분, 안녕하세요. 오늘은 글로벌 서비스 확장 시 웹사이트 성능을 최적화하는 방법에 대해 알아보겠습니다. 특히 기존 온프레미스 인프라를 유지하면서 해외 사용자 경험을 개선하는 방법을 다룰 예정입니다.
문제 상황
Q1:
한 회사의 동적 웹사이트가 미국의 온프레미스 서버에서 호스팅되고 있습니다. 이 회사는 유럽에서 새로운 제품을 출시할 예정이며, 유럽 사용자들을 위해 사이트 로딩 시간을 최적화하고자 합니다. 단, 사이트의 백엔드는 반드시 미국에 유지되어야 합니다. 제품 출시가 며칠 앞으로 다가온 상황에서 즉각적인 솔루션이 필요합니다. 솔루션 설계자는 어떤 방안을 추천해야 할까요?
<small>A company's dynamic website is hosted using on-premises servers in the United States. The company is launching products in Europe and wants to optimize the site's load times for the new European users. The site's backend must remain in the United States. The product is launching in a few days, and an immediate solution is needed.
What should a solutions architect recommend?</small>
선택지
A. us-east-1에서 Amazon EC2 인스턴스를 시작하고 사이트를 마이그레이션합니다.
<small>Launch Amazon EC2 instances in us-east-1 and migrate the site.</small>
B. 웹사이트를 Amazon S3로 이동합니다. 지역 간 교차 지역 복제를 사용합니다.
<small>Move the website to Amazon S3. Use cross-Region replication.</small>
C. 온프레미스 서버를 가리키는 사용자 지정 오리진과 함께 Amazon CloudFront를 사용합니다.
<small>Use Amazon CloudFront with a custom origin that points to the on-premises servers.</small>
D. 온프레미스 서버를 가리키는 Amazon Route 53 지리 근접 라우팅 정책을 사용합니다.
<small>Use an Amazon Route 53 geoproximity routing policy that points to the on-premises servers.</small>
정답 및 해설
정답은 C입니다.
Amazon CloudFront를 사용자 지정 오리진과 함께 사용하는 것이 이 상황에 가장 적합한 솔루션입니다. 이 방법을 통해 다음과 같은 이점을 얻을 수 있습니다:
-
글로벌 성능 최적화: CloudFront는 전 세계에 분산된 엣지 로케이션을 통해 콘텐츠를 캐싱하고 제공합니다. 이를 통해 유럽 사용자들에게 더 빠른 응답 시간을 제공할 수 있습니다.
-
기존 인프라 유지: 온프레미스 서버를 사용자 지정 오리진으로 설정함으로써 기존 백엔드 인프라를 그대로 유지할 수 있습니다. 이는 문제의 요구사항인 "백엔드는 미국에 유지"를 충족시킵니다.
-
빠른 구현: CloudFront 배포는 빠르게 설정할 수 있어, "며칠 안에 출시"해야 하는 시간 제약을 충족시킬 수 있습니다.
-
동적 콘텐츠 지원: CloudFront는 정적 콘텐츠뿐만 아니라 동적 콘텐츠도 효율적으로 처리할 수 있어, "동적 웹사이트"라는 요구사항에 부합합니다.
<small>The correct answer is C: Use Amazon CloudFront with a custom origin that points to the on-premises servers.
Amazon CloudFront with a custom origin is the most suitable solution for this scenario. Here's why:
-
Global Performance Optimization: CloudFront uses a network of edge locations worldwide to cache and serve content, providing faster response times for European users.
-
Existing Infrastructure Retention: Setting up the on-premises servers as a custom origin allows the company to maintain its existing backend infrastructure, meeting the requirement of keeping the backend in the United States.
-
Quick Implementation: CloudFront distributions can be set up quickly, meeting the time constraint of launching "in a few days."
-
Dynamic Content Support: CloudFront can efficiently handle both static and dynamic content, aligning with the "dynamic website" requirement.</small>
오답 설명
A. us-east-1에서 EC2 인스턴스 시작:
이 옵션은 사이트를 AWS로 마이그레이션하지만, 유럽 사용자들의 지연 시간 문제를 해결하지 못합니다. 또한 마이그레이션에 시간이 더 걸릴 수 있어 즉각적인 솔루션이 되기 어렵습니다.
<small>A. Launching EC2 instances in us-east-1:
This option migrates the site to AWS but doesn't address the latency issues for European users. It may also take longer to migrate, making it less suitable as an immediate solution.</small>
B. S3로 웹사이트 이동:
S3는 정적 웹사이트 호스팅에 적합하지만, 이 경우 동적 웹사이트라고 명시되어 있어 적절하지 않습니다. 또한 백엔드 로직을 S3로 이동하기 어려울 수 있습니다.
<small>B. Moving the website to S3:
S3 is suitable for static website hosting, but this case specifies a dynamic website. Also, it may be challenging to move backend logic to S3.</small>
D. Route 53 지리 근접 라우팅:
이 방법은 트래픽을 다른 지역의 서버로 라우팅할 수 있지만, 문제에서 요구하는 백엔드의 미국 유지 조건을 충족시키기 어렵습니다. 또한 CDN의 이점을 활용하지 못합니다.
<small>D. Route 53 geoproximity routing:
While this can route traffic to servers in different regions, it doesn't meet the requirement of keeping the backend in the US. It also doesn't provide the benefits of a CDN.</small>
결론
이 문제는 글로벌 사용자 기반을 가진 웹 애플리케이션의 성능 최적화에 관한 것입니다. Amazon CloudFront를 사용자 지정 오리진과 함께 사용하는 것이 기존 인프라를 유지하면서도 글로벌 성능을 개선할 수 있는 효과적인 방법입니다. 이는 AWS의 글로벌 인프라를 활용하여 지연 시간을 줄이고 사용자 경험을 향상시키는 동시에, 기존 시스템의 대규모 변경 없이 빠르게 구현할 수 있는 솔루션입니다.
<small>This question addresses the optimization of web application performance for a global user base. Using Amazon CloudFront with a custom origin is an effective way to improve global performance while maintaining existing infrastructure. It leverages AWS's global infrastructure to reduce latency and enhance user experience, while allowing for quick implementation without major changes to the existing system.</small>
댓글
댓글 쓰기