을 고려하면
- CDN은 클라이언트에 더 가까운 리소스를 제공 할 수 있고 클라이언트가 캐시 할 수 있으며 자체 서버의 부하를 줄일 수 있기 때문에 좋은 것 입니다.
- 최근 브라우저에서는 타사 서버에서 리소스를로드해도 SRI (Subresource Integrity) 덕분에 보안이 저하되지 않습니다 .
- 일부 국가에서는 CDN이 다운되거나 차단 될 수 있으며 오프라인으로 개발할 때는 사용할 수 없습니다 1 .
CDN을 사용하는 것이 매력적이지만 CDN을 사용할 수 없도록 준비해야한다고 생각합니다. 이 블로그 게시물 은 대체를 제공하기위한 다양한 접근 방식을 소개합니다. 기본 예제 를 살펴보면 jQuery와 Bootstrap에 대한 대체를 제공하는 꽤 많은 상용구 코드가 이미 포함되어 있음을 알 수 있습니다. 반면 선호되는 솔루션은 작년에 거의 유지되지 않은 것으로 보이는 Fallback.js 사용을 제안 합니다 . 마찬가지로 주제 와 관련하여 가장 관련성이 높은 질문 은 jQuery에 대한 대체를 제공하는 것입니다.
그러나 대부분의 실제 프로젝트에서는 5 개 이상의 js / css 리소스가 필요할 것으로 예상되므로 지저분한 보일러 플레이트를 반복하여 모든 것을 대체 할 필요가 없다고 생각합니다. 또한 리소스를 추가하거나 업데이트 할 때마다
- CDN 링크 업데이트
- 수동 다운로드 또는 npm / bower 구성에서 버전 변경으로 로컬 대체 사본 업데이트
- 폴백에 대한 링크 업데이트
- SRI 해시 업데이트
에있는 반면에 이상적인 세계 , 내가 추가 / 하나 개의 구성 파일에서 리소스를 업데이트하고 다른 모든 단계 (업데이트 아무것도 부러 있는지 확인하기 위해 다음 테스트를 실행) 자동 실행이 기대.
이를 달성하기 위해 이미 확립 된 워크 플로우가 있습니까?
아니면 CDN, 특히 SRI가 아직 너무 최근입니까?
아니면 대부분의 사람들은 단순히 CDN 리소스에 대한 폴백을 제공하지 않습니까?
1. CDN에 의존하지 않는 개발 빌드를 가질 수 있지만 유지 관리가 필요하기 때문에 폴백 형태도 고려합니다.
Fallback.js
이 때문에 전혀 관리가되지 않고 이미 완벽하게 작동? 소프트웨어가 이미 작동하는 경우 5 분마다 변경하지 않아도됩니다.