Among Us - Yellow Crewmate [CloudFront]ELB의 전송속도 향상시키기

AWS/실습

[CloudFront]ELB의 전송속도 향상시키기

감쟈! 2021. 2. 27. 18:00

웹서버 아키텍처

 

예전에 3티어 아키텍처에 대해 공부하면서 만들어진 웹서버를 활용하는 방법에 대해서 생각해보았다.

웹서버와 VPC 외부에서 작용하는 AWS의 서비스들을 활용해 더 많은 서비스들을 이해하는 시간을 가져보기로 했다.

 

 

 

 

이번에 해볼 실습은 웹서버와 CloudFront 연동해서 웹서버의 전송 속도를 향상시키도록 하겠다.

CloudFront는 AWS에서 제공하는 CDN서비스로서, 물리적으로 거리가 먼 다른 지역에서 오는 트래픽의 전송 속도를 엣지 로케이션을 통해 향상시킬 수 있다.

 


실습 내용

1. CloudFront 배포

 

2. CloudFront 전송 속도 테스트

 

3. CloudFront 액세스 로그 S3 버킷에 저장

 

 

 

 

1. 먼저 CloudFront 콘솔에 접속해 "Create Distribusion"을 클릭해 CloudFront를 배포해주자

Create Distribusiton

 

2. Web 으로 Get Started 시작해주자

 

 

 

3. Origin Domain Name 에 ELB 도메인 주소를 적어서, ELB를 오리진 서버로 정해주자.

간단하게 전송속도 테스트만 해볼거라서 다른 것들은 전부 기본값 설정해주었다

 

 

 

4. ELB를 오리진 서버로 둔 ClooudFront가 배포되었다. 이제 CloudFront의 Domain Name을 통해 웹으로 접속이 가능하다.

 

 

 

 

5. CloudFront는 배포가 되었는데.. 전송 속도가 차이가 나는게 맞나?? 생각이 들어서 아래의 홈페이지에서 테스트를 해주었다.

webpagetest.org/ 

 

WebPageTest - Website Performance and Optimization Test

Select Test Location Moto G (gen 4)Moto G (gen 6)Moto G (gen 1)Moto E (gen 1)iPhone 8 (iOS 14)iPhone 7+ (iOS 14)iPhone 6 (iOS 12)iPhone 5c (iOS 10.3)iPad 2017 (iOS 14)iPad Mini 2 (iOS 12)Dulles, VA USA (Desktop, Android, iOS)Dulles, VA - Thinkpad T430 (Chr

webpagetest.org

 

 

(기존의 ELB 주소를 캐나다에서 접속한 결과)

기존 ELB로 접속

 

(CloudFront 주소로 캐나다에서 접속한 결과)

CloudFront로 접속

 

전송 속도가 눈에 띌 정도로 차이가 많이 나는것 같다....


다음은 배포한 CloudFront 주소로 접속할 때 발생하는 액세스 로그를 CloudFront logs를 통해 S3 버킷에 저장해보자.

 

 

1.  CloudFront 콘솔에서 Logs 항목에서 배포했던 CloudFront에 들어가주자. 

CloudFront logs 설정

 

 

2. Edit를 눌러서 이전에 생성해두었던 S3버킷을 선택해주자.

(S3버킷 및 정책 생성과정은 이전 게시물 참고)

사용할 S3버킷 설정

 

 

 

 

3. CloudFront log를 이제 S3 버킷에서 볼 수 있다.

 

 

 

4. CloudFront 주소로 접속해보면 S3에 액세스로그가 저장되는 것을 확인할 수 있다. 

액세스로그를 S3 버킷에 저장하기

 

 

 

이번 실습을 통해서 웹서버에 CloudFront를 배포해 거리가 먼 지역과 통신을 할 떄, 전송 속도를 향상시키는 법과 CloudFront의 액세스 로그를 S3 버킷에 파일로 저장시키는 방법에 대해서 알게되었다.