/ azure

Azure CDN 완전정복 4 - 기타설정

1. 미리로드

Azure CDN 은 캐시기 때문에 최초 요청이 오면 원본 컨텐츠를 가져와서 캐싱 후에 전달 해준다. 즉, 최초 요청에는 캐싱을 사용하지 못하므로 (Cache Miss)전송 속도가 느리다. Verizon CDN의 경우에는 이를 방지 하기 위해서 미리로드 기능이 제공 된다. (Akamai는 제공하지 않음) 이 기능을 이용하려면 Azure CDN 끝점에 자산 미리 로드 문서를 참고 바란다. 첫번째 요청 마져 빨라야 하는 것이라면 이 기능을 사용하면 되지만 자연스럽게 첫 요청에서 CDN 캐싱이 되도록 놔두는 것도 나쁘지 않다.

2. 압축

Azure CDN은 HTTP 압축을 지원한다. HTTP 압축에 대해서는 좋은 글이 많으니 검색해서 참조하면 되고 Azure CDN에서 설정하는 방법은 파일을 압축하여 성능 향상 글을 참조 바란다. 이 글에서 포인트 몇 개를 가져오면

- 이미 압축되어 있는 포멧 (ZIP, MP3, MP4, JPG 등)에는 적용하지 않는 것이 좋음.
- 압축을 할지 말지에 대한 규칙이 있음.


   - Verizon의 경우 128B - 1MB 사이의 컨텐츠만 압축, Akamai는 모든 파일 가능
   - Verizon은 gzip, deflate, bzip2 인코딩 지원, Akamai는 gzip만 지원

테스트 html 파일을 Azure CDN에 올려서 웹브라우저로 요청하고 Fiddler로 내용을 보면 압축한 것을 확인 할 수 있다. Response Header에 Content-Encoding: gzip 을 확인할 수 있고 본문이 압축되어 있다.

cdn_comp

3. Custom Domain

Azure CDN은 끝점을 만들면 xxx.azureedge.net 이라는 도메인을 제공한다. 때때로 t서비스의 서브 도메인으로 변경하고 싶을 때가 있는데 Azure 에서 Custom Domain을 제공한다. 설정 방법은 사용자 지정 도메인을 CDN(콘텐츠 배달 네트워크) 끝점에 매핑하는 방법을 참조하면 된다. 각자의 DNS 관리에 들어가서 Azure에서 제공하는 주소를 CNAME으로 등록하고 Azure Portal에 그 주소를 입력해주면된다. cdn.contoso.com dl.contoso.com 등의 주소를 사용 가능하다.

CNAME으로 설정했을 경우 전파 속도가 빠르지만 오래걸릴 경우도 있으니 활성화 될 때까지 기다려야 한다.

중요한 제약사항이 있다.

이렇게 만든 Custom Domain 이 HTTPS를 지원하려면 인증서를 업로드해서 활성화 해야 하는데 아직 Azure CDN에서는 지원하지 않는다. 즉 HTTPS를 사용하는 웹 사이트에 CDN 주소를 적용할 때에는 Custom Domain 말고 Azure 에서 만든 xxx.azureedge.net 을 사용해야 한다. 이 기능이 빨리 구현되기를 바란다면 Feed Back 에 가서 Vote 버튼을 눌러주길 바란다.
2017년 2월 6일 부터 Custom Domain에 Https를 지원 합니다.

4. 국가별 액세스 제한(Geo-filtering)

CDN의 사용 시나리오에 따라서 국가별로 컨텐츠가 안보이도록 제한하고 싶은 경우가 있다. 예를들어 한국말로 녹화된 동영상 컨텐츠가 한국에서만 볼 수 있도록 설정을 해서 컨텐츠가 유출 되는 것을 막을 수 있다. 이 기능을 사용하려면 국가별 액세스 제한 문서를 참고 하면 된다. 최근(2016-10-21 부터)에 Akamai 도 지원하게 되었다.

역시 새로운 설정이 적용 되려면 역시 최대 90분 을 기다려야 한다.

azure_cdn_geofiltering