[Info]Tags categorized posts and contents patterns..

[AJAX] Ajax Code E xamples.. [Book] About the book.. [CSS] CSS Code E xamples.. [DB] Sql Code E xamples.. [DEV] All development stor...

2016년 3월 17일 목요일

[jQuery]jQuery CDN 속도 비교..

출처 : Outsider's Dev Story https://blog.outsider.ne.kr/

2년 정도 전에 Google에서 CDN을 통해서 배포하고 있는 Javascript 라이브러리들에 대해서 포스팅 한 적이 있었는데 요즘 많이 쓰이는 jQuery도 CDN을 통해서 배포되고 있습니다. 이렇게 CDN을 통해 배포되는 javascript 라이브러리를 사용할 때의 이점은 (회사에서는 좀 그렇지만)개인적인 프로젝트는 더 좋은 성능의 CDN을 통해서 JS파일을 내려줄 수 있게 되고 또 캐싱되어 있을 경우 빠르게 사용자가 이용할 수 있다는 장점이 있습니다.(다만 개발할때 오프라인에서는 개발을 못하겠죠. ㅎ)

jQuery 다운로드페이지에 보면 현재 jQuery는 Google, Microsoft, jQuery CDN(Edgecast)을 통해 배포되어 있는 것을 알 수 있습니다. 각각의 URL은 아래와 같습니다.

Google Ajax API CDN : http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
jQuery CDN : http://code.jquery.com/jquery-1.4.2.min.js
Microsoft CDN : http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js

3월에 pingdom에서 속도테스트의 결과가 올라왔었습니다.(생각만 하다가 이제야 포스팅을...) 이 테스트의 결과로는 유럽을 제외하고는 일반적으로 jQuery CDN(Edgecast)이 제일 빠르더라는 것이었는데 Asia쪽에서는 테스트도 이뤄지지 않은것 같고 또 국내와는 사정이 다를것도 같아서 테스트를 해보았습니다.

jQuery CDN Speed Test

테스트는 3번 진행하였고 Fiddler를 이용해서 요청에 대한 시간으로 계산했으며 각 테스트당 10번씩 요청하여 평균값으로 계산하였습니다.(머 통계를 내기에는 적은 수치기는 하지만 그 이상 테스트 하기엔 좀 귀찮아서요.) 집 - 회사 - 집 이렇게 3번 진행하였는데 첫번재 테스트때는 네트워크 사정이 안좋았는지 전체적으로 수치가 높게 나타났습니다.

(통계적 수치라기 보다는 그냥 참고용으로만 봐주세요.) 전체적으로는 그래도 인프라가 좋은 Google이 가장 안정적으로 제공하고 있고 네트워크가 안좋을때 제외하고는 MS CDN도 좋은 성능을 보여주고 있습니다. 아시아쪽에는 CDN서버가 없는 것인지 Edgecast는 영 맥을 못추고 있습니다.

파일 용량

Google : 72,322 Bytes
Edgecast : 72,174 Bytes
Microsoft : 72,413 Bytes

압축된 jQuery파일이기 때문에 각 CDN별로 약간의 차이가 있기는 했지만 신경쓸만한 용량의 크기는 아닙니다. 원본소스가 같으니 당연한 결과이겠지만요.

Content-Type

Google : text/javascript; charset=UTF-8
Edgecast : application/x-javascript
Microsoft : application/x-javascript

Content-Type의 경우는 Edgecast와 Microsoft는 application/x-javascript를 사용하고 Google는 text/javascript에 캐릭터셋까지 지정하여 내려주고 있습니다. 표준(?)은 application/javascript지만 현실적으로 이걸 지원하고 있는 브라우저는 거의 없는 상황이고 text/javascript와 application/x-javascript를 사용하고 있는 상황입니다 둘의 차이는 그다지 없는것 같습니다.(Stackoverflow에서 논의된 내용을 참고해보셔도 좋을것 같습니다.)

Caching

Google : Caching public, max-age=31536000 expires: 2011 Jun 20
Edgecast : no caching
Microsoft : Caching public, max-age=31536000 expires: 2011 Mar 25

Google과 MS는 1년짜리 캐싱을 해주고 있습니다. 내용이 바뀔일도 없고 공통으로 사용할 수 있으므로 이왕이면 캐싱이 있는 것이 더 낫다고 생각되는군요.



댓글 없음:

댓글 쓰기