2013-11-15 3 views
1

모든 마케팅 자료와 함께 백본 응용 프로그램을 처리하는 노드가있는 단일 페이지 응용 프로그램이 있습니다. Rackspace Cloudfiles CDN에서 모든 자산 (JS, html, 이미지)을 제공하여 노드 서버의 부하를 줄이면서 gzip 파일을 전달할 때로드 시간을 줄이고 싶습니다.RequireJS를 사용하여 CDN의 로컬 프로젝트 정적 자산로드

이 작업을 자동화하는 가장 좋은 방법은 무엇입니까?

내가해야해야 내가 그런트와 노드 모두 해결책을 발견

생산 모드에서 모든 고정 자산에 대한 CDN

  • 참고 문헌 CDN에 빌드 후

    • 동기화 파일 내 프로젝트에서 사용되는 모듈.

      Grunt CDN
      Grunt Cloud Files
      Node Asset Rack

      내가 그런트 갈 경우 - 나의 첫 번째 선택이다,

      1. 어떻게 내가있는 CDN에서 봉사에 실행하고 명시 응용 프로그램을 설정하는 생산?
      2. 어쨌든 모든 자산을 처리하기 때문에 노드 용 자산 관리자를 사용하는 것이 더 낫습니까?
  • +0

    나는 당신이 여기서 무엇을 묻고 있는지 정말로 모르겠습니다. Grunt CDN은 앱과 관계없이 URL을 CDN URL로 바꾸기 위해 빌드/배포 단계에 대한 불만 사항을 설정하는 방법을 설명합니다. 이러한 애셋의 URL이 동적으로 생성되면 적절한 경우 URL 템플릿을 수동으로 설정해야합니다. – rdodev

    +0

    @rdodev 내 템플릿에 나열되지 않은 자산을 처리하는 대신, 직접 요구 사항 – imrane

    +0

    에 직접 게재되는 자산을 의미합니다. 그 여분의 레이어는 사물을 복잡하게 만듭니다. 나는 그것을 조사해보고 재미있는 것을 발견하면 다시보고 할 것입니다. – rdodev

    답변

    0

    어떻게 내가 생산에 CDN에서 봉사에 실행하고 명시 응용 프로그램을 설정합니까?

    보기를 렌더링 할 때 자산을 선택할 위치를 알려주는 플래그를 전달할 수 있습니다.

    관심이 있으시면 여기에 예제가 있습니다. 내 예에서

    <% if(isConnected) { %> 
         <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
         <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script> 
         <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>  
         <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular-resource.min.js"></script>  
         <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular-cookies.min.js"></script>  
        <% } else { %> 
         <script src="/js/jquery.min.js"></script> 
         <script src="/js/bootstrap.min.js"></script> 
         <script src="/js/angular.min.js"></script> 
         <script src="/js/angular-resource.min.js"></script> 
         <script src="/js/angular-cookies.min.js"></script> 
        <% } %> 
    

    https://github.com/hectorcorrea/hectorcorrea.com/blob/master/views/index.ejs#L136

    : 내 경우에는 내가에서 내 JS 파일을 선택 위치를 결정하는 I (예 : 비행시) 네트워크에 연결하거나 있지 않다 여부에 대한 플래그를 가지고 값은 하드 코드되어 있지만 Express dev/prod 값을보기에 쉽게 전달하여 자동으로 동일한 결과를 얻을 수 있습니다.

    +0

    많은 자산이 requirejs로 직접로드됩니다. – imrane