Während unseres Build-Vorgangs führen wir aspnet_compiler.exe
gegen unsere Websites aus, um sicherzustellen, dass alles Spät gebundene Zeug in ASP.NET/MVC tatsächlich kompiliert wird (ich weiß nichts über ASP.NET, aber mir wird versichert, dass dies notwendig ist, um zu verhindern, dass Fehler zur Laufzeit auftreten).
Unsere Websites sind ziemlich groß, mit ein paar hundert Seiten/Ansichten/Steuerungen usw., allerdings scheint die benötigte Zeit im Bereich von 10-15 Minuten übermäßig zu sein (zur Referenz: dies dauert länger als die komplette Lösung mit ca. 40 Projekten zu kompilieren, und wir kompilieren nur zwei Website-Projekte vor).
Ich bezweifle, dass es an der Hardware liegt, da ich auf dem neuesten Quad-Core-Intel-Chip mit 4GB RAM und einer WD Velociraptor 10.000rpm Festplatte arbeite. Und was seltsam ist, ist dass die EXE nicht viel CPU verwendet (1-5%) und auch nicht besonders viel I/O zu sein scheint.
Also... ist dies ein bekanntes Problem? Warum ist es so langsam? Und gibt es eine Möglichkeit, es zu beschleunigen?
Hinweis: Um ein paar Dinge zu klären, über die einige Leute geantwortet haben, ich rede nicht über die Kompilierung von Code innerhalb von Visual Studio. Wir verwenden bereits Webanwendungsprojekte, und die Geschwindigkeit der Kompilierung dieser ist nicht das Problem. Das Problem ist die Vorkompilierung der Website nachdem diese Projekte bereits kompiliert wurden (siehe diese MSDN-Seite für weitere Details) als Teil des Entwicklungs-Build-Skripts. Wir führen eine In-Place-Vorkompilierung durch, ohne die Dateien in ein Zielverzeichnis zu kopieren.