Domanda

Ho un'app grave piuttosto grande (rotaie 3.2.3), utilizzando la pipeline Asset.Ci sono alcuni file nella cartella Asset.

Under 1.8.7, eseguire rake assets:precompile richiede 4 minuti.Questo è lungo, ma a causa del numero elevato di beni che sono disposto a tollerarlo.

Il problema è che dopo aver aggiornato l'app a 1.9.2, eseguire rake assets:precompile assume 28 minuti .

Ecco le versioni della gemma pertinenti:

rails (= 3.2.3)
uglifier (1.2.3)
  execjs (~> 1.3.0)
therubyracer (~> 0.9.9)
  libv8 (~> 3.3.10)
sprockets (2.1.2)
  hike (~> 1.2)
  rack (~> 1.0)
  tilt (~> 1.1, != 1.3.0)
.

Quando I tail -f log/production.log vedo che i beni vengono compilati, e non riesco a individuare il lungo ritardo a una singola risorsa (anche se sembra che vedo le stesse risorse più volte nei tronchi - presumibilmente perché ci sono più passaggiper ogni risorsa?)

Quali altri passaggi dovrei provare ad aiutare a diagnosticare quale sia il problema?

È stato utile?

Soluzione

Ruby 1.9.2 ha avuto gravi regressioni nel tempo di carico, che credo è cresciuto esponenzialmente con il numero di file caricamenti.Questa app Hit Rails è davvero difficile, e sospetto che sia la causa dietro il tempo di compilazione di risorse molto aumentato che stai vedendo.

Questo è stato risolto in 1.9.3, quindi prova a eseguire l'aggiornamento a quello o Backporting la patch di caricamento a 1.9.2 .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top