Les performances diminuent dans Team Foundation Server 2013 Update 2 après la mise à niveau vers SQL Server 2014

Cet article vous aide à contourner le problème de diminution des performances dans Team Foundation Server 2013 Update 2 après la mise à niveau vers SQL Server 2014.

Version d’origine du produit : Team Foundation Server 2013
Numéro de la base de connaissances d’origine : 2953452

Symptômes

Après la mise à niveau vers Microsoft SQL Server 2014, vous remarquez une diminution des performances dans Microsoft Team Foundation Server 2013 Update 2.

Par exemple, vous remarquez que le suivi des éléments de travail ralentit. Lorsque cela se produit, l’ouverture et la modification des éléments de travail prennent plus de temps si de nombreux champs sont définis sur syncnamechanges=true.

En outre, si vous avez de nombreux regroupements de projets d’équipe dans le instance Team Foundation Server affecté, vous remarquez les problèmes suivants :

  • Le débit diminue considérablement, comme le mesurent les compteurs de performances suivants :
    • Demandes de traitement par lots/s (DT)
    • Team Foundation Server Services/Current Reqs/sec (AT)
    • Services Web/Nombre total de demandes de méthode/s (AT)
  • Les compteurs de performances DT suivants augmentent en moyenne :
    • Compilations SQL/s
    • Recompilations SQL/s
    • %Temps processeur

Cause

Ces problèmes se produisent car la configuration matérielle requise pour SQL Server 2014 est supérieure à celle des versions antérieures de SQL Server.

Le problème de performances du suivi des éléments de travail se produit, car plusieurs vues utilisées par le suivi des éléments de travail contiennent une ou plusieurs jointures à la table Constantes pour chaque champ qui inclut cet attribut. Le nouvel estimateur de cardinalité dans SQL Server 2014 détermine parfois à tort que ces jointures retournent plusieurs lignes. Lorsqu’il existe un grand nombre de ces jointures, SQL Server peuvent mal calculer le nombre total de lignes retournées par les vues en tant que nombre important. Par conséquent, le programme détermine à tort qu’il doit passer beaucoup de temps à optimiser les plans de requête qui impliquent les vues.

Solution de contournement

Pour contourner le problème global de performances, utilisez les méthodes suivantes :

  • Si vous avez une configuration volumineuse (500 utilisateurs ou plus), augmentez la RAM sur l’ordinateur qui héberge SQL Server. Une bonne norme à suivre est de 0,4 gigaoctet (Go) par base de données de collection.

    Si les problèmes de performances persistent, essayez la méthode suivante.

  • Effectuez les tâches suivantes :

    • Assurez-vous que les paramètres de mémoire minimale et maximale SQL sont définis explicitement pour laisser au moins 2 Go de mémoire physique libre pour le système.
    • Activez les pages verrouillées pour le compte qui exécute le service SQL.
    • Activez l’indicateur de trace SQL 8032.

Pour contourner spécifiquement le problème de performances du suivi des éléments de travail, utilisez la méthode suivante :

  • Si vous constatez une diminution significative des performances lorsque vous ouvrez ou modifiez des éléments de travail après la mise à niveau vers SQL Server 2014, définissez le paramètre Niveau de compatibilité de vos bases de données sur 110. Cela amène SQL Server à utiliser l’outil d’estimateur de cardinalité antérieur. Cet outil estime plus précisément le nombre de lignes retournées par les jointures.

Plus d’informations

Contactez-nous pour obtenir de l’aide

Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.