2011-11-10 5 views
3

레일 3.1은 개발이 매우 느린 페이지를로드합니다. 한 번에 하나씩 파이프 라인을 통해 처리하며 너무 오래 걸립니다.개발중인 자산을 직접 (자산 파이프 라인 없음) 제공합니까?

(지금 테스트 중이 아니기 때문에 정적 파일이 좋으므로) 자산을 사전 컴파일 할 수 있습니까? 레일 서비스를 제공하지 않아도됩니까? 일이 더 빨라지겠습니까?

업데이트 : 해결책이 있습니다.
Richard Hulse에는이 질문에 대한 올바른 답이 있습니다. rake assets:precompile은 자산 파이프 라인없이 자산을 미리 작성하여 자산을 직접 제공합니다.

그러나 Frexuz의 대답은 느린 로딩 문제를 해결합니다. Rails-dev-tweaks 보석을로드하면 개발중인 페이지 로딩 속도가 현저히 빨라집니다.

+0

'config/environments/development.rb' 파일의 자산에 대한 설정을 질문에 추가하십시오. 이것은 느림의 원인이되어야합니다. – mliebelt

답변

6

나는 동일한 문제가있었습니다! 애셋으로 인해 페이지를로드하는 데 2-4 초의 추가 시간이 소요될 수 있습니다.

여기 (보석)을 살펴 보자 :

Rails 3.1 is very slow in development-mode because of assets, what to do?이 일반적으로 자산 파이프 라인을 사용하여, (서버 콘솔 자산 당이 1ms를 말한다) 거의 즉시 자산을 제공했다.

3

예.

프리 컴파일 태스크를 실행할 수 있으며 (3.1.1) 사전 컴파일 태스크는 개발 모드에서 필요한 것뿐만 아니라 지문없이 자산을 제공합니다. 지문은 dev 모드에서 추가되지 않습니다.

소스 제어에 커밋하지 않도록주의하십시오.

더 걱정되는 점은 속도 저하입니다. 내 매니페스트에는 4 개의 스타일 시트와 15 개의 자바 스크립트 파일이 있는데 첫 번째 요청에는 약간 느립니다.

애셋에 액세스 할 때 로그에서 무엇을 볼 수 있습니까? 첫 번째 히트에서 컴파일되는 것을 볼 수 있어야하며 이후의 각 요청은 304 수정되지 않아야합니다.

또한 dev의 구성 설정은 자산 파이프 라인 가이드의 구성 설정과 일치합니까? 많은 파일을 가지고 개발 모드로 압축했다면 느려질 수 있습니다.

관련 문제