6
votes

Le site Web prend beaucoup de temps pour démarrer après la construction de la solution

Dans le développement, notre site Web ASP.NET 4 prend un temps assez long pour commencer une fois que les bibliothèques de projet sont construites

Nous faisons une bonne quantité de population de statiques, etc., mais pas suffisamment pour justifier la durée de la durée de la vie (probablement 3-4 minutes)

Nous ne construisons pas le site Web, juste les bibliothèques et le lot! = true dans l'élément de compilation dans le fichier .config.

Je vais essayer de loger quelques diagnostiques, mais tout autre pointeurs serait utile


5 commentaires

Pourrait-il être que vous tirez les fichiers * .PDB pour les bibliothèques de cadre que vous utilisez?


@Tom Gullen: Oui, c'est notre environnement de développement ...


@Justin Niessner: Pas sûr, comment dirais-je? Et comment puis-je l'empêcher.


@Embo - Inside of Visual Studio ... Outils -> Options -> Débogage -> Symboles. Il devrait y avoir deux boutons radio pour 'Tous les modules, sauf exclus "ou" uniquement des modules spécifiés ". Si le premier est coché, il téléchargera des symboles pour tout.


Merci - nous avons ce drapeau vérifié. Je vais tester et poster.


4 Réponses :


0
votes

Si vous avez beaucoup de projets liés à la solution, lorsque vous faites une construction, il construira chaque projet. Si vous avez des projets que vous n'abandonnez pas, il est acceptable de supprimer le projet lui-même et de vous référer directement au .dll.


3 commentaires

Oui je sais. Il n'y a que six projets, ils se développent tous raisonnablement rapidement. Il navigue dans une page sur le site après la construction qui prend beaucoup de temps.


Donc, une fois que le site est complètement chargé et que vous essayez de naviguer, il faut 3 à 4 minutes pour aller de la page à la page ... ou est-ce une seule page spécifique qui prend aussi longtemps que de charger?


La première page, par la suite, c'est surtout bien.



8
votes

Vous pouvez également essayer le optimizecompilats = "true" , sur la compilation session de web.config. xxx

mon site Cela fait également trop de temps pour courir pour le temps du poing, après avoir compilé ma DLL.


5 commentaires

Cela semble intéressant. Je vais enquêter et lui donner un aller.


@Embo vient d'être biffé pour cette situation: lorsque vous utilisez une fonction (var1, var2, var3 = certains par défaut), si vous modifiez les variables d'entrée, par exemple, vous le faites fonction (var1, var2, var3 = certaines par défaut, Var4 = certains Par défaut), vous devez trouver tous les fichiers ASPX que vous l'utilisez, ouvrez-la modifier une ligne et enregistré à nouveau, car cet indicateur fait du cache des fonctions utilisées et si la fonction utilisée a des variables par défaut et que vous modifiez cela, ce cache peut pas le comprendre.


@Anicho Il y a un patch de Microsoft pour les versions précédentes.


Excellente solution - J'ai un très grand projet qui contient d'autres projets DAL, BLL, etc. Cela a vraiment contribué à accélérer le développement de PLL.


Nice..- TRAVAILLER..MANKS @ ARISTOS



0
votes

La bonne chose à faire ici est d'utiliser DotTrace ou DynaTrace pour profiler et comprendre quel est le problème. Il vous dira combien de temps il faut pour exécuter tout votre code.

Un autre problème potentiel est que votre solution ne trouve pas les bibliothèques appropriées. Allumez le visualiseur de journal de fusion pour déterminer s'il y a des pannes de liaison de montage.


2 commentaires

Et comment exécuterait-on la dottrace ou la dynatrace?


Téléchargez-le et il est assez facile à utiliser. jetbrains.com/profiler/download profilage est l'une de ces choses qui fait vraiment la différence lorsque dans le besoin.



1
votes

J'espère que les étapes ci-dessous réduiront votre temps

Fermez votre projet, puis supprimez le fichier 'Visual Studio Solution Options d'utilisateur (.suo)' et rouvrez le projet


1 commentaires

+1 ça a fonctionné pour moi. Mon application utilisait plus de 30 minutes trop construite et après cette solution, elle se développe rapidement.