안녕하세요 이번시간에는 저번에 학습한 Region과 Availiability Zone에 이어 Edge Location과 Edge Cache에 대해 알아보도록 하겠습니다.
저번시간에는 Data Center가 어떻게 구성되어 가용성을 보장하는지 배웠다면 이번에는 성능적인 면에서 어떤 방식으로 글로벌로 높은 성능을 유지할 수 있게 인프라가 구성되어 있는지 배우게 됩니다.
나중에 추가적으로 CDN에 대해 공부하시면 더욱 도움이 될거 같습니다.
엣지 로케이션 (Edge Location)
엣지 로케이션은 aws의 cdn들의 여러 서비스들을 가장 빠른 속도로 제공(캐싱) 하기 위한 거점이다. 전 세계에 여러 장소에 흩어져 있습니다.
보다 정확히 말하자면 리전과 가용영역과 별게로 AWS의 CDN 서비스인 CloudFront과 AWS의 DNS 서비스인 Route53의 캐시 서버를 의미합니다..
Info
CloudFront란 AWS에서 제공하는 CDN 서비스를 의미합니다.
CDN(Contents Delivery Network) 서비스는 콘텐츠를 보다 빠르게 전송하는 기술로, 속도 개선과 회선 비용 절감에 용이합니다.
최초 요청 시에는 서버로부터 콘텐츠를 가져와 고객에게 전송하며, 동시에 CDN 캐싱장비에 저장한다.
이후에는 CDN 캐싱 장비에 저장된 콘텐츠를 바로 전송하는 방식입니다..
CDN 업체에서 지정하는 컨텐츠 만료 지점까지 호출이 없으면 주기적으로 삭제합니다..
Cloud Front는 EC2나 S3 같은 서비스에서 사용할 경우, 가장 가까운 엣지로 라우팅되어 콘텐츠 전송 속도를 향상할 수 있습니다.
이를 통해 데이터, 동영상, 애플리케이션 및 API까지 전송 가능합니다.
- Static 캐싱 = 운영자가 콘텐츠를 미리 캐시 서버에 복사해서 요청 시 무조건 캐시 서버를 이용 가능
- Dynamic 캐싱 = 운영자가 미리 복사하지 않아 콘텐츠가 없을 때 Origin 서버로부터 다운받아 전달하는 방식
한번쯤은 제이쿼리 같은 라이브러리를 사용하기위해 cdn 링크를 html에 삽입해본 경험이 있을 것입니다.
당연히 소스를 빠르게 다운받아 이용하기위해 속도가 중요하다는 것 쯤은 알고 있을 것입니다.
즉, 이와 같이 CDN과 DNS같은 서비스들의 서버들은 리전과 별게로 여러개의 엣지 로케이션에 적용되어 서비스되고 있어 우리는 저멀리 미국 영화나 드라마를 지연 없이 바로바로 다운받아 볼수 있는 것입니다.
예시)
우리나라의 대표적인 스트리밍 서비스는 아프리카 TV가 있죠!
만일 미국과 남아프리카, 호주에서 우리나라 서비스 아프리카TV의 방송이나 영상을 보고 싶다면, 당연히 아프리카TV 본사가 위치하고 있는 한반도 리전에 접속해서 다운로드 해야 합니다.
사진에서 볼수 있듯이 길게 설명안해도 속도가 엄청나게 느릴 겁니다.
거기다 오늘 보고 끄고, 내일 또 방송을 보고싶을때 그 멀리까지 다시 연결해 다운받아야 할 것이고요...
이러한 단점을 극복하기위해 엣지 로케이션 이라는 개념과 시설을 사용 하는 것입니다.
각 거점마다 가깝고 적당한 곳에 엣지 로케이션(임시 데이터 저장소 센터)을 배치합니다.. 하늘색 바둑알이 엣지 로케이션입니다.
그러면 각 대륙의 사람들(검은색 바둑알)은 가까이 위치한 지역내의 엣지 로케이션에 접속해 스트리밍 서비스를 이용할 수 있게 됩니다.
당연히 훨씬 속도 면에서 유리하고, 또한 일정기간동안 요청한 데이터를 저장하는 기능(캐시, 콘텐츠 복사)도 갖춰 있어서 오늘 보고 내일 또 보고싶을때 저 멀리 까지 재연결 하는 일 없이 바로바로 볼 수 있는 장점도 있습니다.
즉, 엣지 로케이션이라함은 CDN 서비스와 사용자가 만나는 곳을 Edge라고 하며, 그 Edge가 어느 지역에 위치한 시설을 말합니다.
리전 엣지 캐시 (Regional Edge Cache)
CloudFront의 오리진 서버(CDN)와 에지 로케이션 사이에 위치해 있다고 보면 됩니다.
만일 서비스를 이용하려고 할때, 엣지 로케이션에 컨텐츠가 없는 경우 리전별 엣지 캐시에서 검색을 시도합니다.
결국 CDN 서비스의 엣지 로케이션이랑 비슷한 개념이라 적당히 이해하고 넘어가면 됩니다.
이것으로 AWS의 글로벌 Backbone이 어떻게 구성되어 있고 어떤 상황에 필요한지 알게 되었습니다.
우리가 아는 Netflix도 AWS를 활용해서 전 세계에서 서비스를 제공하고 있죠 ㅎㅎ
앞으로 글로벌 시장으로 진출하고 싶다면 AWS를 통해 서비스를 제공해보아요~~
댓글