Nach dem Upgrade von VS2013 auf VS2015 war ich schockiert, wie langsam meine Webanwendung mit dem angehängten Debugger läuft. Also habe ich mich entschieden, einen Vergleich zwischen VS2013 und VS2015 mit MiniProfiler durchzuführen, um eine besonders langsame Seite zu analysieren:
Interessanterweise wird die Seite beim Debuggen mit VS2013 schneller unter IIS als IIS Express geladen. Aber beim Debuggen in VS2015 ist IIS viel langsamer als IIS Express.
Außerdem gibt MiniProfiler an, dass ein hoher Anteil der Zeit im SQL-Code verwendet wird. Also habe ich dotTrace ausprobiert, um die Seite auf IIS zu profilieren - einmal mit dem VS2015-Debugger und einmal ohne Anhang:
Es scheint, dass beim Debuggen in VS2015 ein sehr hoher Prozentsatz der CPU-Zeit (Echtzeit) für SqlCommand.ExecuteReader () ausgegeben wird, während mit dem Debugger, der nicht angehängt ist, diese Methode ziemlich effizient ist.
Ich habe das auch auf einem anderen Computer mit den gleichen Ergebnissen getestet.
Meine Anwendung verwendet ASP.NET MVC, NHibernate, SQL Server 2014 und ich verwende IIS 10
Hat jemand anderes eine langsame Anwendungsleistung mit dem VS2015-Debugger erfahren, insbesondere wenn SQL-Befehle ausgeführt wurden? Irgendwelche Ideen was die Ursache ist und wie man es löst?
In meinem Fall war es in der Tat die Diagnose mit vielen ado.net Operationen einfügen Die einzige Möglichkeit war, die Diagnose in vs2015
zu deaktivierenIn Viual Studio 2017 rc ist es das gleiche
Tags und Links sql-server iis debugging performance visual-studio-2015