Différence de performances entre SQL Server Management Studio et les applications ASP.NET
Lors de l'exécution de requêtes SQL, il n'est pas rare de rencontrer des écarts de performances importants entre SQL Server Management Studio (SSMS) et les applications Web. De tels problèmes de performances peuvent être déroutants et frustrants. Dans ce cas, une requête qui s'exécute en quelques secondes dans SSMS prend quelques minutes à s'exécuter dans une application ASP.NET.
Exploration du reniflage des paramètres
Une explication potentielle de cette disparité est un phénomène connu sous le nom de reniflage de paramètres. Le reniflage des paramètres se produit lorsque l'optimiseur de requêtes SQL Server utilise différents plans d'exécution pour la même requête en fonction des types de données et des valeurs des paramètres fournis lors de la compilation.
Dans la requête fournie, le paramètre @customerID est utilisé pour filtrer les résultats. Lorsque la requête est exécutée dans SSMS, l'optimiseur peut choisir un plan d'exécution plus efficace en fonction de la valeur spécifique de @customerID. Cependant, lorsque la requête est exécutée dans l'application ASP.NET, l'optimiseur peut compiler la requête en utilisant un plan moins optimal en raison du type de données ou de la valeur différente de @customerID à ce moment-là.
Atténuation Reniflage de paramètres
Pour atténuer le reniflage de paramètres, tenez compte des éléments suivants stratégies :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!