Évaluation des performances de Team Foundation Server
Mise à jour : novembre 2007
Vous pouvez configurer les compteurs de performance et les outils de contrôle pour évaluer les performances de Team Foundation Server. L'examen et l'interprétation de ces données dans le temps peuvent vous aider à évaluer les performances globales de votre déploiement Team Foundation Server. En outre, l'examen des données de performance peut aider à identifier les problèmes et les résoudre.
Le serveur Team Foundation Server lui-même est une application d'ASP.NET SQL Server qui utilise SQL Server pour enregistrer des données. Si vous êtes familiarisé avec la surveillance de ce type d'application, vous pouvez utiliser la même approche pour surveiller Team Foundation Server et évaluer ses performances.
Établissement de lignes de base
Chaque déploiement de Team Foundation Server est unique. Les différences au niveau du matériel, des logiciels, du nombre d'utilisateurs, du nombre de projets, du modèle de processus utilisé pour chaque projet et de la quantité de données sources et d'éléments de travail affectent les performances de Team Foundation Server. Il est important d'établir des données de performances de référence pour votre déploiement Team Foundation Server spécifique. Celles-ci vous permettront d'identifier toutes les variations significatives dans les performances, le cas échéant. De même, avec le temps, vous comprendrez mieux les exigences en termes de performances globales de votre matériel Team Foundation Server.
La portée de l'infrastructure pour Team Foundation Server est assez grande. Vous devez décider de manière proactive ce que vous souhaitez surveiller et si une valeur que vous avez remarquée requiert une action. Par exemple, vous pouvez décider d'agir si une UC atteint 80 % à son plus haut niveau pendant un temps supérieur à 10 minutes. Vous pouvez documenter cette décision de manière à ce que les autres participants au projet aient un seuil défini. Si vous rassemblez toutes ces variables et états à un seul emplacement, vous obtenez un modèle d'information documenté sur l'état d'intégrité de votre environnement pour Team Foundation Server. Cette stratégie est également connue sous le nom de modèle d'intégrité ou d'informations d'état. Le modèle d'intégrité est un ensemble de conditions observables qui définissent les états du système. L'exemple précédent définit le seuil de surveillance de l'utilisation de l'UC. Comme le montre cet exemple, le modèle d'intégrité relève davantage de la convention et du consensus que de la science et des mathématiques.
En tant qu'administrateur de Team Foundation Server, vous devez décider ce que vous allez surveiller et comment évaluer si un état a changé en utilisant les seuils comme points de référence. Sans modèle d'intégrité, il n'existe pas de points de référence par rapport auxquels vous pouvez mesurer l'intégrité de votre déploiement.
Outils pour établir des lignes de base
L'analyse des performances est assez différente de la surveillance des journaux. Elle requiert l'observation d'un jeu spécifique de compteurs de performance pendant une période spécifiée. Par exemple, vous souhaiterez peut-être analyser la performance afin de pallier les problèmes relatifs au temps de réponse. Il est difficile de répondre aux réclamations des utilisateurs concernant le temps de réponse pour le téléchargement de l'arborescence source pour un projet spécifique si vous ne disposez d'aucune donnée à propos des temps de téléchargement habituels. Bien que Team Foundation Server n'inclue pas un jeu spécifique d'outils pour analyser les performances du serveur, vous pouvez utiliser les outils d'analyse et les options disponibles dans Windows Server 2003, Microsoft SQL Server 2005 et le .NET Framework pour contrôler votre déploiement Team Foundation Server. En outre, vous pouvez créer vos propres outils pour analyser les performances Team Foundation Server. Pour plus d'informations, consultez Fonctionnement des outils de surveillance pour Team Foundation Server.
Évaluation des données
Les données d'enregistrement, les données de traçage, les données d'analyse des performances et les données d'analyse du service nécessitent toutes une approche différente pour leur compréhension et leur interprétation. En premier lieu, vous devez comprendre et vérifier que quelque chose s'est produit. Puis, si nécessaire, vous devez déterminer quelle action ramènera le système dans un état plus intègre. Chaque déploiement a son propre processus pour acquérir cette compréhension et adopter une ligne de conduite. Toutefois, tout processus nécessitera un effort concentré au fil du temps. Vous pouvez développer plus facilement vos propres informations de réponse personnalisées si vous conservez un enregistrement des données collectées en surveillant votre déploiement et des actions entreprises pour faire face aux modifications défavorables. Vous pouvez investir dans une suite logicielle du commerce pour vous aider à automatiser la collecte et la conservation de ces données.
Dès que vous aurez établi des lignes de base pour votre déploiement Team Foundation Server, vous pourrez mieux déterminer l'intégrité globale et l'état de Team Foundation Server. Par exemple, si vous constatez régulièrement une exception de base de données au moment de l'exécution dans l'Observateur d'événements, vous pouvez ne pas avoir suffisamment de ressources processeur ou mémoire disponibles sur votre serveur de couche Données Team Foundation. De même, si vous constatez une baisse subite de l'un des compteurs de performance de Team Foundation Server, vous saurez examiner l'application de ce compteur de performance en plus des performances globales du serveur de couche Application Team Foundation. Pour plus d'informations, consultez Analyse des performances.
Surveillance de la performance du contrôle de version
Vous devez traiter de nombreuses variables lorsque vous surveillez le contrôle de version et un environnement de build d'équipe. Si vous avez une bonne compréhension des cycles de développement, vous pouvez prédire de manière plus précise ce que vous devez surveiller de près dans le contrôle de version. De plus, si vous comprenez leurs limites, vous pourrez faire face aux problèmes de manière plus proactive.
Team Foundation Server inclut de nombreux compteurs de performance pour la surveillance du contrôle de version. Selon vos objectifs, les compteurs présentés dans le tableau suivant peuvent vous intéresser. Pour obtenir la liste complète des compteurs, consultez Analyse des performances.
Surveillance des performances de Team Foundation Build
Comme avec n'importe quel jeu d'outils, l'utilisation définie par votre déploiement variera fortement. Par exemple, un projet avec un environnement de génération unique avec un script de compilation unique différera sensiblement dans son utilisation d'un projet d'équipe avec des environnements de génération multiples et un grand nombre de scripts de compilation. Pour analyser les performances de Team Foundation Build de manière efficace, vous devez déterminer des critères de contrôle qui correspondent à vos besoins de déploiement. La liste suivante contient certains éléments que vous souhaiterez peut-être analyser dans Team Foundation Build :
Temps moyen d'exécution d'une génération
Nombre de fois qu'une génération a lieu
Par exemple, une build diurne ne doit être générée qu'une fois par jour.
Nombre de builds dont la génération a échoué dans un laps de temps donné
Nombre de builds générées en dehors des heures d'ouverture
Critères de performance standard du serveur exécutant Team Foundation Build
Par exemple, vous pouvez analyser les pourcentages d'utilisation de l'UC.
Temps moyen pour une génération longue
Notification de générations réussies
Les outils et procédures suivants peuvent vous aider à déterminer quelques-uns des facteurs importants de votre environnement Team Foundation Build :
En affichant un résumé Team Foundation Build, vous pouvez déterminer l'échec et le temps qu'il a fallu à une génération pour se terminer. Pour plus d'informations, consultez Comment : afficher l'état du résumé de build.
En analysant la progression de la génération, vous pouvez déterminer quelles sont les étapes ou les éléments qui font qu'une génération prendra plus de temps que prévu pour se terminer. Pour plus d'informations, consultez Comment : surveiller la progression de la génération.
En recevant des notifications de générations, vous pouvez déterminer l'état des générations actuelles. Pour plus d'informations, consultez Comment : recevoir des notifications de build par courrier électronique.
Voir aussi
Concepts
Fonctionnement des outils de surveillance pour Team Foundation Server
Autres ressources
Contrôle de Team Foundation Server