공유할 서비스 선택

TECH


TECH

Middleware (Cache-2) CDN 개념과 활용방법 정리

페이지 정보

작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 2,110회 좋아요 0회 작성일 21-02-22 14:20

본문

안녕하세요. 미들웨어 입니다.

 

지난 Cache Nginx 설정에 이어서 CDN 개념정리에 대해 이야기 해보겠습니다. 

지난 번에도 언급했었지만, CDN을 잘 활용할 경우 순간 트래픽에 대응 가능하며, Cloud 환경에서 좀 더 비용을 절감할 수 있는 포인트이기도 합니다.

음.. 예를들어 AWS 환경으로 동접 1만명에 대비해서 EC2를 구성해놓았때 오토 스케일링으로 한계가 있고  EC2가 증설될때 동안 트래픽은 과부하로 서비스 장애는 유발될겁니다. 

Cache 시스템이 적용되있고 CDN을 잘만 활용한다면... 대비를 할 수 있습니다.

 

 

1. CDN 설명 정리

https://www.phonesreview.co.uk/2017/09/01/content-delivery-network-cdn-works


콘텐츠 전송 네트워크  ( CDN은 ) 분산 서버 (시스템입니다 네트워크 페이지 및 기타 웹 제공)  컨텐츠를  사용자, 웹 페이지의 원점과의 지리적 위치를 기반으로 사용자,  콘텐츠 전달  서버. … 또한 CDN 은 트래픽 급증으로부터 보호를 제공합니다.

비슷한 말로 CDN (Content Delivery Network)은 더 빠른 전송과 고 가용성 콘텐츠를 제공하는 것을 목적으로하는 전 세계적으로 분산 된 웹 서버 네트워크입니다. 콘텐츠는 CDN 전체에 복제되므로 한 번에 여러 위치에 존재합니다. 더 나은 성능 외에도 CDN은 콘텐츠 제공 업체의 원본 인프라에서 직접 제공되는 트래픽을 오프로드하여 콘텐츠 제공 업체의 비용을 절감 할 수 있습니다. 콘텐츠 전송 네트워크 (CDN)는 콘텐츠 전송을 담당하는 인터넷의 투명한 백본입니다. 우리가 알든 모르 든 우리 모두는 매일 CDN과 상호 작용합니다. 뉴스 사이트의 기사를 읽거나 온라인 쇼핑을하거나 YouTube 동영상을 보거나 소셜 미디어 피드를 읽을 때.

간단히 말해서 CDN의 목적은 사용자 경험을 개선하고보다 효율적인 네트워크 리소스 활용을 제공하는 것입니다. 
미디어 회사 및 전자 상거래 공급 업체와 같은 콘텐츠 제공 업체는 CDN 운영자에게 콘텐츠를 청중, 즉 최종 사용자에게 제공하기 위해 비용을 지불합니다. 차례로 CDN은 데이터 센터에서 서버를 호스팅하기 위해 ISP, 통신사 및 네트워크 운영자에게 비용을 지불합니다.

고속 연결을 사용하는 사용자는 특히 라이브 이벤트를 볼 때 또는 호스팅 서버에서 멀리 떨어져있는 경우 끊김 현상, 로딩 지연 및 품질 저하를 경험합니다. 
CDN은 이미지 지터를 유발하는 지연 문제를 최소화하고 전송 속도를 최적화하며 각 뷰어에 대해 사용 가능한 대역폭을 최대화합니다.

 

2. CDN 의 핵심 (위치 와 cache)

- CDN은 위치와 cache에 의해서 성능이 좌우된다.

- CDN의 기능은 Nginx 로도 구현이 가능하다.

- 정적 파일은 S3 storage에 넣고 바니쉬나 redis로 캐시기능을 대처 할 수 있긴하다.

 

 

3. CDN 캐싱방식 (static, dynamic)

- Static Caching

  사용자의 요청이 없어도 Origin Server에 있는 Content를 운영자가 미리 Cache Server에 복사함

  따라서 사용자가 Cache Server에 접속하여 Content를 요청하면 무조건 그 Content는 Cache Server에 있음 (100% Cache Hit)

  대부분의 국내 CDN에서 이 방식을 사용함 (예. Pooq 동영상 스트리밍/다운로드, NCSOFT 게임파일 다운로드 등)

 

- Dynamic Caching

  최초 Cache Server에는 Content가 없음

  사용자가 Content를 요청하면 해당 Content가 있는지 확인하고, 없으면(Cache Miss) Origin Server로 부터 다운로드 받아(Cache Fill) 사용자에게 전달해 줌

  이후 동일 Content를 요청 받으면 저장(캐싱)된 Content를 사용자에게 전달(Cache Hit)

  각 Content는 일정 시간(TTL)이 지나면 Cache Server에서 삭제될 수 있고, 혹은 Origin Server를 통해 Content Freshness 확인 후에 계속 가지고 있을 수 있음

  Akamai, Amazon과 같은 Global CDN 업체, 그리고 Cisco나 ALU의 통신사업자향 CDN 장비 솔루션에서 이 방식을 지원함

 

- Route53 GEO location 

  client DNS로 구분해서 web서버 리다이렉트 기능 이다.

  CDN에서 제공하는 기능은 아님 (중국만 호출됐을때 web 2번은 중국으로만 보낼수 있으니 트래픽 제어 가능)

  web1 = deafult, web2 = 중국DNS만 호출

  location : default => china 변경하면 성능개선

 

- cloudfront 압축(gzip)방식 적용

자바스크립트, css 위주로 하며 Nginx에서 처리도 가능하다.

최대 80% 페이지 로딩속도 개선, 비용개선, 데이터 전송비용 절감

https://aws.amazon.com/ko/blogs/korea/new-gzip-compression-support-for-amazon-cloudfront/

 

이로서 CDN의 개념 설명은 이번장으로 마치겠습니다.

요즘 Cloud 활용범위가 빠르게 확산되고 있네요.. 

 

 

 

 

 

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
168 OS OSworker 아이디로 검색 전체게시물 09-25 493
Stratis 파일시스템에 대해 들어보셨나요?

카테고리 : OS

493 0
작성자 : OSworker 23/09/25
167 Middleware 미들웨어 아이디로 검색 전체게시물 09-22 366
(MSA 개발-2) Oracle DB & SpringBoot MSA 응용 프로그램 테스트

카테고리 : Middleware

366 0
작성자 : 미들웨어 23/09/22
166 OS OSworker 아이디로 검색 전체게시물 09-21 640
Kdump 에 대해 알아보는 시간~!!

카테고리 : OS

640 0
작성자 : OSworker 23/09/21
165 Middleware 미들웨어 아이디로 검색 전체게시물 09-11 658
(MSA 개발-1) Oracle DB를 사용한 SpringBoot 마이크로서비스

카테고리 : Middleware

658 0
작성자 : 미들웨어 23/09/11
164 OS OSworker 아이디로 검색 전체게시물 08-30 1327
Red Hat Linux lifecycle

카테고리 : OS

1,327 0
작성자 : OSworker 23/08/30
163 Middleware 미들웨어 아이디로 검색 전체게시물 08-21 501
(MSA 개발 환경 구성-2) Oracle DB (Docker)& SQLcl 구성

카테고리 : Middleware

501 0
작성자 : 미들웨어 23/08/21
162 OS OSworker 아이디로 검색 전체게시물 08-20 553
Live kernel patch - 온라인 커널 업데이트

카테고리 : OS

553 0
작성자 : OSworker 23/08/20
161 OS OSworker 아이디로 검색 전체게시물 08-12 685
Red Hat Enterprise Linux 9 의 새로운기능에 대해 알아보기 part -2 : Session Recording

카테고리 : OS

685 0
작성자 : OSworker 23/08/12
160 Middleware 미들웨어 아이디로 검색 전체게시물 08-09 2043
(MSA 개발 환경 구성-1) Maven & VScode & RancherDesktop설치

카테고리 : Middleware

2,043 0
작성자 : 미들웨어 23/08/09
159 OS OSworker 아이디로 검색 전체게시물 07-31 943
OpenSSH 'CVE-2023-38408' 보안 취약점 안내

카테고리 : OS

943 1
작성자 : OSworker 23/07/31
Total 198건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top