일부 사람들에게는 이것이 분명 할 수도 있지만 궁금합니다. 왜 내 사이트의 jQuery를 호스팅하기 위해 Google 서버 에 의존해야 합니까?
이 방법으로 더 빨리로드되기 때문입니까?
답변
이 때문입니다:
- 사용 가능한 병렬 처리가 증가합니다.
(대부분의 브라우저는 특정 사이트에서 한 번에 3 개 또는 4 개의 파일 만 다운로드합니다.) - 캐시 적중이 발생할 가능성을 높입니다.
더 많은 사이트가이 방법을 따르면 이미 더 많은 사용자가 파일을 준비하고 있습니다. - 페이로드가 가능한 작게됩니다.
Google은 파일을 다양한 형식 (예 : GZIP 또는 DEFLATE)으로 사전 압축 할 수 있습니다. 이렇게하면 압축 시간이 길고 압축되지 않기 때문에 다운로드 시간이 매우 짧아집니다. - 서버에서 사용하는 대역폭의 양을 줄입니다.
(Google은 기본적으로 무료 대역폭을 제공합니다.) - 이를 통해 사용자는 지리적으로 가까운 응답을 얻을 수 있습니다.
(Google은 전 세계에 서버를 보유하고있어 대기 시간이 더욱 줄어 듭니다.) - (선택 사항) 스크립트를 자동으로 최신 상태로 유지합니다.
( “바지 옆에 날아 다니고 싶다면”항상 최신 버전의 스크립트를 사용할 수 있습니다. 보안 문제를 해결할 수는 있지만 일반적으로 문제가 해결 될 수 있습니다.)
답변
Google의 CDN에서 jQuery를 사용 하지 않을 경우 몇 가지 시나리오가 있습니다 .
-
웹 서버가 클라이언트와 동일한 네트워크에서 호스팅되는 인트라넷 응용 프로그램을 빌드하는 경우 Google의 CDN jQuery를 사용하는 경우 로컬 네트워크의 웹 서버가 아닌 인터넷에 전화를 겁니다. 이렇게하면 조직의 대역폭이 증가하고 속도가 느려집니다.
-
응용 프로그램을 오프라인으로 실행하려는 경우 . (첫 번째 문제와 매우 관련이 있습니다) 개발 환경에서 작업해야하는 경우 (예 : Bower로 관리 ) 인터넷에 연결하지 않고도 (예 : 기차에서) 응용 프로그램을 작동시킬 수 있어야합니다.
-
당신이 그것을 사용자 정의해야 할 때 . 예를 들어 Grunt 를 사용하여 특정 모듈 만 사용하거나 AMD 이름을 설정하기 위해 라이브러리를 빌드하는 경우
-
jQuery가 필요한 SSL을 통해 페이지를 제공 할 때. 보안 문제 및 경고를 피하려면 페이지뿐만 아니라 SSL을 통한 JavaScript도 제공해야합니다.
또한 Microsoft는 CDN에서 jQuery 를 호스팅합니다 . 이는 Google의 호스팅 된 jQuery를 사용하는 것과 비교할 수있는 또 다른 선택입니다.
답변
이 연구 에 의해 TJ VanToll는 그것이 CDN에서 다른 스크립트가 아닌 부하를 함께 jQuery를 연결하는 더 나은 저를 설득했다.
그 이유는 모바일 장치에서 jQuery를 가져 오는 데 소요되는 대기 시간입니다.
“2012 년에 미국의 모바일 네트워크에서 평균 RTT 시간은 344ms였습니다. 그리고이 344ms는 모든 HTTP 요청 (현재 평균 웹 페이지가 93 개를 만드는 것)뿐만 아니라 모든 DNS 조회 및 TCP 연결에도 적용됩니다 … 평균 RTT가 향상되고 있지만 현재 네트워크가 물리학에 의해 규정 된 이론적 한계의 작은 요소 내에 있기 때문에 추가 이득은 미미합니다. “
또한 Steve Souders 의이 게시물 을 인용 하여 CDN을 사용하여 캐싱 이점 을 실제로 얻을 수없는 이유를 보여줍니다 .
“CDN 제공 업체, jQuery 버전 및 프로토콜 사용 (http 및 https)의 조각화로 인해 CDN 캐시 적중률이 매우 낮습니다. 외부 도메인에서 다운로드하면 1 개가 아닌 3 개를 수행 할 수 있습니다. 왕복 (DNS 조회, TCP 연결 및 HTTP GET). “
답변
가장 큰 이점은 캐싱입니다. 방문자가 자바 스크립트 라이브러리를로드 한 사이트를 방문한 경우 (예 : Google CDN의 jQuery) 웹 사이트를 방문하면 해당 라이브러리는 이미 해당 사용자의 브라우저 캐시에 있으므로 다시 다운로드 할 필요가 없습니다. . 이론 상으로는 큰 소리로 들립니다.
여기와 다른 곳에서 공유되는 이점은 모두 이론적 인 것입니다. CDN 사용과 예상되는 성능 이점을 제공하는지에 대한 심층 분석이 이루어졌습니다.
http://www.root777.com/appdev/does-using-google-libraries-api-cdn-give-you-performance-benefits
답변
많은 사람들이 생각하지 않는 jQuery를 Google이 호스팅하지 못하게하는 가장 큰 이유는 중국에있는 경우 다운로드하지 않기 때문입니다. Google CDN이 호스팅하는 다른 많은 스크립트, 글꼴 등과 함께 차단됩니다. 중국인에게 다가 가려면 항상 자신의 서버에서 호스팅되는 폴백을 사용하는 것이 가장 좋습니다.
중국에서 Google APIS 차단
답변
여기에 “왜 …해야 하는가”와 “왜 …
CDN에서 jQuery를로드하려는 경우 Google에 대안 목록을 추가하고 싶습니다.
- CDN JS- https : //cdnjs.com/libraries/jquery
- Microsoft- https : //docs.microsoft.com/en-us/aspnet/ajax/cdn/overview#jQuery_Releases_on_the_CDN_0] 2
- jsDelivr- https: //www.jsdelivr.com/package/npm/jquery
- code.jquery.com (StackPath) – https://code.jquery.com/
- Google- https : //developers.google.com/speed/libraries/#jquery
그러나 요약하자면 기본적으로 전반적인 웹 사이트 / 응용 프로그램 성능을 향상시키고 있습니다.
답변
서비스 작업자와 함께 Usign CDN을 사용하면 코드를 업데이트 할 때마다가 아니라 클라이언트 수명주기 동안 CDN을 한 번 다운로드 할 수 있습니다.