it-swarm-korea.com

외부 JS 라이브러리

내 페이지에서 호출하는 외부 js 파일이 몇 개 있는데, 현재 헤더의 스크립트 태그를 통해 호출됩니다.

나는 이것을 로컬로 가져 와서 테마 스크립트 파일에 포함시켜 페이지의로드 시간을 줄이려고합니다. 스크립트를 최신 상태로 유지하는 데 오버 헤드가 있다는 것을 알고 있지만 페이지의 총로드 시간을 줄이면 가치가 있습니다.

이것에 대한 좋은 연습이 있습니까? 외부 적으로 유지해야합니까 아니면 drupal JS 구조에 포함시키는 것이 좋습니까?)

5
Jeremy French

스크립트가 무엇인지에 달려 있다고 생각합니다. 타사 스크립트를 로컬에 포함시키지 않고 사용하면 확실히 이점이 있습니다. 대부분의 경우 swfobject, webfont loader 등과 같은 경우 가능하면 Google 라이브러리 API (http://code.google.com/apis/libraries/)를 사용하려고합니다. 여기서 장점은 클라이언트가 이미 이러한 라이브러리를 캐시하여 로컬 호스팅보다 성능을 향상시킬 수 있다는 것입니다. 스크립트에 널리 사용되는 써드 파티 호스트가없는 상황에서는 일반적으로 sites/all/libraries/$ library_name에 추가하고 로컬로 포함 시키므로 Drupal의 JS 집계 및 축소 기능을 활용할 수 있습니다.

6
beeradb

외부 스크립트를 로컬로 가져 오는 효과는 많은 요인에 따라 다릅니다. 예를 들어 다음을 고려하십시오.

  • 모든 브라우저는 주어진 서버에서 동시에 가져 오는 리소스 수 (자바 스크립트/CSS/이미지)에 제한이 있습니다. 도메인의 리소스 수를 늘리면 전체 페이지로드가 증가 할 수 있습니다.
  • 중앙 배포 지점 (Google Libraries API 등)은 지리적으로 분산되어 있으며 아마도 자신의 서버보다 더 안정적이고 빠릅니다.
  • 클라이언트가 중앙 배포 지점에서 배포 된 경우 라이브러리에 이미 캐시가있을 수 있습니다.
  • Drupal 6은 특히 JS 및 CSS 파일의 집계를 수행하는 방법에있어 바보입니다. 따라서 클라이언트가 다른 Javascript 파일 세트가있는 웹 사이트의 페이지를 방문하면 클라이언트가 동일한 라이브러리를 여러 번 다운로드해야 할 수 있습니다.

따라서 CDN 호스트 버전을 이미 사용중인 경우 로컬 버전으로 다시 전환하는 것이 좋습니다.

3
Damien Tournoud

떠오르는 모듈 Advanced CSS/JS Aggregation 을 살펴보십시오. 그것은 가장 완벽하고 효율적인 집계 시스템을 제공하는 것을 목표로합니다.

3
Vacilando