Note: This article discusses a scenario that may be addressed by Microsoft Advisory Services.
Microsoft Advisory Services is an hourly fee-based, consultative support option that provides proactive support beyond your break-fix product maintenance needs. This is a remote, phone-based support option that includes working with the same technician for assistance with issues like product migration, code review, or new program development. This service is typically used for shorter engagements, and is designed for developers and IT professionals who do not require the traditional onsite consulting or sustained account management services that are available from other Microsoft support options.
This article also provides some self-help resources for this scenario.
For additional information on Microsoft Advisory Services, including on how to engage, refer to this Microsoft web page:
http://support.microsoft.com/default.aspx?pr=AdvisoryService
(http://support.microsoft.com/default.aspx?pr=advisoryservice)
Microsoft can provide Performance Tuning services for your software solutions, Microsoft development technologies and platforms such as Common Language Runtime (CLR) framework, Internet Information Server (IIS), developer tools like Visual Studio.NET, and other Microsoft Software Development related tools and solutions.
Example includes:
- IIS/ASP performance diagnostics and tuning, such as CPU spikes and slow user experience.
- CLR performance debugging, profiling, detailed analysis, and architectural best practices.
- Team Foundation Server performance issues, such as Work Item Tracking, Source Control, Reporting, and Server Responsiveness.
Below is a list of self-help resources or this scenario. These resources may also be used by Microsoft Support Engineers during an Advisory Services engagement.
IIS 6 Performance ForumA forum aimed at sharing ideas, techniques for optimizing IIS performance.
http://forums.iis.net/1037.aspx
(http://forums.iis.net/1037.aspx)
IIS 7 Performance ForumDiscussion on how to effectively tweak IIS 7 to resolve issues related to performance.
http://forums.iis.net/1050.aspx
(http://forums.iis.net/1050.aspx)
PAG Performance Testing GuideThis guide shows you an end-to-end approach for implementing performance testing. Whether you are new to performance testing, or looking for ways to improve your current performance testing approach, you will find insights that you can tailor for your specific scenarios.
http://msdn.microsoft.com/en-us/library/bb924375.aspx
(http://msdn.microsoft.com/en-us/library/bb924375.aspx)
PAG Improving .NET Application Performance and ScalabilityThis guide provides end-to-end guidance for managing performance and scalability throughout your application life cycle to reduce risk and lower total cost of ownership. It provides a framework that organizes performance into a handful of prioritized categories where your choices heavily impact performance and scalability success.
http://msdn.microsoft.com/en-us/library/ms998530.aspx
(http://msdn.microsoft.com/en-us/library/ms998530.aspx)
Optimizing Performance of Database Access in IISThis document provides some "best practices" for optimizing database access.
http://msdn.microsoft.com/en-us/library/ms525484.aspx
(http://msdn.microsoft.com/en-us/library/ms525484.aspx)
ASP.NET Performance Monitoring and When to Alert Administrators
Discusses which performance counters are most helpful in diagnosing stress and performance issues in Microsoft ASP.NET applications, what thresholds should be set in order to alert administrators to problems, and other resources that can be used to monitor the health of an ASP.NET application.
http://msdn.microsoft.com/en-us/library/ms972959.aspx
(http://msdn.microsoft.com/en-us/library/ms972959.aspx)
Designing Scalable IIS ApplicationsThis guide provides design considerations for performance and scalability.
http://msdn.microsoft.com/en-us/library/ms525522.aspx
(http://msdn.microsoft.com/en-us/library/ms525522.aspx)
Scaling Strategies for ASP.NET ApplicationsThis MSDN article discusses scaling requirements for ASP.NET applications.
http://msdn.microsoft.com/en-us/magazine/cc500561.aspx?pr=blog
(http://msdn.microsoft.com/en-us/magazine/cc500561.aspx?pr=blog)
Tools for Optimizing Performance
This document lists brief descriptions of performance-optimizing tools and how to access them.
http://msdn.microsoft.com/en-us/library/dd328379.aspx
(http://msdn.microsoft.com/en-us/library/dd328379.aspx)
Design and Configuration for Performance (ASP.NET)This topic discusses design, configuration, compilation, and memory options available to improve the performance of a Web application.
http://msdn.microsoft.com/en-us/library/ms227998.aspx
(http://msdn.microsoft.com/en-us/library/ms227998.aspx)
ASP.NET Performance ArticlesThis document provides a listing of articles that can be used to improve and montior the performance of your applications.
http://msdn.microsoft.com/en-us/library/44e5wy6k(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/44e5wy6k(VS.85).aspx)
Troubleshooting a Performance Issue with Failed Request Tracing and appcmd in IIS 7This blog post discusses how to troubleshoot a performance issue in IIS 7.
http://blogs.msdn.com/tess/archive/2008/08/19/troubleshooting-a-performance-issue-with-failed-request-tracing-and-appcmd-in-iis7.aspx
(http://blogs.msdn.com/tess/archive/2008/08/19/troubleshooting-a-performance-issue-with-failed-request-tracing-and-appcmd-in-iis7.aspx)
Bess's "Performance Issues and Hangs"
List of blog postings regarding performance issues.
http://blogs.msdn.com/tess/archive/tags/Performance+issues+and+hangs/default.aspx
(http://blogs.msdn.com/tess/archive/tags/Performance+issues+and+hangs/default.aspx)
How to View What ASP.NET Requests Are Doing at Runtime
This blog post discusses a tool with a User Interface that allows you to choose a process and thread and see the managed call stack at that point in time that can be run on IIS 6.0.
http://blogs.msdn.com/webtopics/archive/2009/05/05/how-to-view-what-asp-net-requests-are-doing-at-runtime-on-iis-6-0.aspx
(http://blogs.msdn.com/webtopics/archive/2009/05/05/how-to-view-what-asp-net-requests-are-doing-at-runtime-on-iis-6-0.aspx)
Troubleshooting System.OutOfMemoryExceptions in ASP.NETThis blog post discusses how to troubleshoot OutOfMemoryExceptions in ASP.NET.
http://blogs.msdn.com/webtopics/archive/2009/05/22/Troubleshooting-System.OutOfMemoryExceptions-in-ASP.NET.aspx
(http://blogs.msdn.com/webtopics/archive/2009/05/22/Troubleshooting-System.OutOfMemoryExceptions-in-ASP.NET.aspx)
Javascript Resources
Profiling Script with the Developer ToolsThis page provides an introduction to script profiling, which can be used to identify and resolve performance-related issues.
http://msdn.microsoft.com/en-us/library/dd565629(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/dd565629(VS.85).aspx)
JScript Debugger in Internet Explorer 8 This blog post provides information on how to use the JScript debugger
http://blogs.msdn.com/jscript/archive/2008/03/13/jscript-debugger-in-internet-explorer-8.aspx
(http://blogs.msdn.com/jscript/archive/2008/03/13/jscript-debugger-in-internet-explorer-8.aspx)
Improved Productivity Through Internet Explorer 8 Developer ToolsThis blog post focuses on the developer tools available for Internet Explorer 8.
http://blogs.msdn.com/ie/archive/2008/03/07/improved-productivity-through-internet-explorer-8-developer-tools.aspx
(http://blogs.msdn.com/ie/archive/2008/03/07/improved-productivity-through-internet-explorer-8-developer-tools.aspx)
IE + JavaScript Performance Recommendations - Part 1This blog post discusses ways to improvie performance of JavaScript.
http://blogs.msdn.com/ie/archive/2006/08/28/728654.aspx
(http://blogs.msdn.com/ie/archive/2006/08/28/728654.aspx)
IE + JavaScript Performance Recommendations - Part 2: JavaScript Code InefficienciesThis blog post discusses how to avoid JavaScript code inefficiencies.
http://blogs.msdn.com/ie/archive/2006/11/16/ie-javascript-performance-recommendations-part-2-javascript-code-inefficiencies.aspx
(http://blogs.msdn.com/ie/archive/2006/11/16/ie-javascript-performance-recommendations-part-2-javascript-code-inefficiencies.aspx)
IE + JavaScript Performance Recommendations - Part 3: JavaScript Code InefficienciesThis blog post focuses on specific inefficiencies related to closures and object-oriented programming.
http://blogs.msdn.com/ie/archive/2007/01/04/ie-jscript-performance-recommendations-part-3-javascript-code-inefficiencies.aspx
(http://blogs.msdn.com/ie/archive/2007/01/04/ie-jscript-performance-recommendations-part-3-javascript-code-inefficiencies.aspx)
Performance Optimization of Arrays - Part 1This blog post discusses how to improve performance of Array operations
http://blogs.msdn.com/jscript/archive/2008/03/25/performance-optimization-of-arrays-part-i.aspx
(http://blogs.msdn.com/jscript/archive/2008/03/25/performance-optimization-of-arrays-part-i.aspx)
Performance Optimization of Arrays - Part IIThis blog post continues the discussion on how to improve performance of Array operations.
http://blogs.msdn.com/jscript/archive/2008/04/08/performance-optimization-of-arrays-part-ii.aspx
(http://blogs.msdn.com/jscript/archive/2008/04/08/performance-optimization-of-arrays-part-ii.aspx)
Performance issues with "String Concatenation" in JScript This blog post focuses on how to improve the performance of string concatenations in JScript.
http://blogs.msdn.com/jscript/archive/2007/10/17/performance-issues-with-string-concatenation-in-jscript.aspx
(http://blogs.msdn.com/jscript/archive/2007/10/17/performance-issues-with-string-concatenation-in-jscript.aspx)
Eval is Evil - Part 1This blog post provides alternative solutions to the use of the Eval method.
http://blogs.msdn.com/ericlippert/archive/2003/11/01/53329.aspx
(http://blogs.msdn.com/ericlippert/archive/2003/11/01/53329.aspx)
Eval is Evil - Part two This blog post continues the discussion of alternate solutions to the Eval method.
http://blogs.msdn.com/ericlippert/archive/2003/11/04/53335.aspx
(http://blogs.msdn.com/ericlippert/archive/2003/11/04/53335.aspx)
Networking Resources
How to capture network traffic with Network Monitor The purpose of this article is to provide you with the information needed to capture network traffic from a local area network using Microsoft's Network Monitor.
http://kbalertz.com/Feedback.aspx?kbNumber=148942
(http://kbalertz.com/Feedback.aspx?kbNumber=148942)
Fiddler PowerToy - Part 1: HTTP DebuggingLearn how to use the Microsoft Fiddler HTTP debugger when developing and testing Web applications and clients.
http://msdn.microsoft.com/en-us/library/bb250446(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/bb250446(VS.85).aspx)
Fiddler PowerToy - Part 2: HTTP PerformanceLearn how to build a faster Web site using the Microsoft Fiddler HTTP Debugger.
http://msdn.microsoft.com/en-us/library/bb250442(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/bb250442(VS.85).aspx)
Part 2: TCP Performance Expert and General Trouble ShootingThis blog discusses TCP Performance Expert and General Troubleshooting skills.
http://blogs.technet.com/netmon/archive/2007/01/26/part-2-tcp-performance-expert-and-general-trouble-shooting.aspx
(http://blogs.technet.com/netmon/archive/2007/01/26/part-2-tcp-performance-expert-and-general-trouble-shooting.aspx)
TCP Analyzer Expert: Make Your Network Run Faster This blog post focuses on how to use the TCP Analyzer Expert.
http://blogs.technet.com/netmon/archive/2009/06/30/tcp-analyzer-expert-make-your-network-run-faster.aspx
(http://blogs.technet.com/netmon/archive/2009/06/30/tcp-analyzer-expert-make-your-network-run-faster.aspx)
Tools Resources
Fiddler Web Debugging Proxy Fiddler is a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet. This document discusses use of the tool.
http://www.fiddlertool.com/fiddler/
(http://www.fiddlertool.com/fiddler/)
AjaxScopeAjax View enables developer to see and control the behaviors of their web applications on user's desktops. This page discucess how tu use this tool.
http://research.microsoft.com/en-us/projects/ajaxview/
(http://research.microsoft.com/en-us/projects/ajaxview/)
Microsoft Network Monitor Tool to allow capturing and protocol analysis of network traffic.
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=983b941d-06cb-4658-b7f6-3088333d062f
(http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=983b941d-06cb-4658-b7f6-3088333d062f)
Debugging tools for Windows You can use Debugging Tools for Windows to debug drivers, applications, and services on systems that are running Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, or Windows Server 2008.
http://www.microsoft.com/whdc/devtools/debugging/default.mspx
(http://www.microsoft.com/whdc/devtools/debugging/default.mspx)
DebugDiagThe Debug Diagnostic Tool (DebugDiag) is designed to assist in troubleshooting issues such as hangs, slow performance, memory leaks or fragmentation, and crashes in any Win32 user-mode process.
http://www.microsoft.com/downloads/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&displaylang=en
(http://www.microsoft.com/downloads/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&displaylang=en)
neXpert Performance Tool Discussion On Using Fiddler and neXpert To Identify and Fix Web Performance Issues.
http://blogs.msdn.com/nexpert/
(http://blogs.msdn.com/nexpert/)
StraceSTRACE is a socket/SSL tracer designed to generate LOG for Internet Explorer.
http://www.microsoft.com/downloads/details.aspx?familyid=F5EC767F-27F2-4FB3-90A5-4BF0D5F4810A&displaylang=en
(http://www.microsoft.com/downloads/details.aspx?familyid=F5EC767F-27F2-4FB3-90A5-4BF0D5F4810A&displaylang=en)
HTTPReplay HTTPREPLAY is a SOCKTRC plugin allowing to analyze and replay HTTP traffic.
http://www.microsoft.com/downloads/details.aspx?familyid=d25ba362-c17b-4d80-a677-1faff862e629&displaylang=en&tm
(http://www.microsoft.com/downloads/details.aspx?familyid=d25ba362-c17b-4d80-a677-1faff862e629&displaylang=en&tm)
Design Resources
Designing for Add-on PerformanceBlog post describing how to improve add-on performance with Internet Explorer.
http://blogs.msdn.com/ie/archive/2008/04/04/designing-for-add-on-performance.aspx
(http://blogs.msdn.com/ie/archive/2008/04/04/designing-for-add-on-performance.aspx)
Performance Considerations in Internet Explorer This page provides links and tips for getting extra performance from DHTML, Script, Web Servers, ActiveX Controls, Java Applets, and Plugins.
http://msdn.microsoft.com/en-us/library/ms533021(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/ms533021(VS.85).aspx)
Faster DHTML in 12 StepsThis article describes how using some DHTML features can affect performance more than others, and it presents tips that will help your pages perform faster.
http://msdn.microsoft.com/en-us/library/ms533019(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/ms533019(VS.85).aspx)
Building High Performance HTML PagesThis article presents some tips on how you can get the most performance out of your pages.
http://msdn.microsoft.com/en-us/library/ms533020(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/ms533020(VS.85).aspx)
Frequent Flyers: Boosting Performance on DHTML PagesThis blog post discusses how to get better performance from your Dynamic HTML pages.
http://msdn.microsoft.com/en-us/library/bb264005(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/bb264005(VS.85).aspx)
Asynchrony: Loved Your Performance This article discusses how to improve performance with asynchrony.
http://msdn.microsoft.com/en-us/library/bb263994(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/bb263994(VS.85).aspx)
Building ActiveX Controls for Internet Explorer This article covers features of Windows Internet Explorer that a developer writing Microsoft ActiveX Controls should take into account when targeting Internet Explorer as a container.
http://msdn.microsoft.com/en-us/library/aa751970(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/aa751970(VS.85).aspx)
Memory Leak Resources
Understanding and Solving Internet Explorer Leak Patterns This article discusses how to troubleshoot and resolve memory leaks.
http://msdn.microsoft.com/en-us/library/bb250448(VS.85).aspx
(http://msdn.microsoft.com/en-us/library/bb250448(VS.85).aspx)
General Resources
Learn Internet ExplorerA series of topics designed to teach Internet Explorer programming.
http://msdn.microsoft.com/en-us/ie/aa740473.aspx
(http://msdn.microsoft.com/en-us/ie/aa740473.aspx)
Measuring Browser Performance: Understanding issues in benchmarking and performance analysis This document explains the various browser and network components and how each piece can impact performance when benchmarking
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=cd8932f3-b4be-4e0e-a73b-4a373d85146d
(http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=cd8932f3-b4be-4e0e-a73b-4a373d85146d)
IE8 Performance Blog post discussing the performance changes in Internet Explorer 8.
http://blogs.msdn.com/ie/archive/2008/08/26/ie8-performance.aspx
(http://blogs.msdn.com/ie/archive/2008/08/26/ie8-performance.aspx)
Common Issues in Assessing Browser PerformanceThis blog post focuses on performance with a discussion around some of the issues impacting browser performance testing and the techniques that you can use to effectively measure browser performance.
http://blogs.msdn.com/ie/archive/2009/01/23/common-issues-in-assessing-browser-performance.aspx
(http://blogs.msdn.com/ie/archive/2009/01/23/common-issues-in-assessing-browser-performance.aspxhttp://blogs.msdn.com/ie/archive/2009/01/23/common-issues-in-assessing-browser-performance.aspx)
http://support.microsoft.comThis is the support site for Microsoft.
http://support.microsoft.com/
(http://support.microsoft.com/)
http://msdn.microsoft.comThis is the main MSDN site.
http://msdn.microsoft.com/
(http://msdn.microsoft.com/)
How to improve browsing performance in Internet ExplorerThis article describes how to improve browsing performance in Internet Explorer.
http://kbalertz.com/Feedback.aspx?kbNumber=153790
(http://kbalertz.com/Feedback.aspx?kbNumber=153790)
How to optimize Internet ExplorerThis article describes how to reset or optimize Internet Explorer 7.
http://kbalertz.com/Feedback.aspx?kbNumber=936213
(http://kbalertz.com/Feedback.aspx?kbNumber=936213)
How to troubleshoot Internet Explorer issues in Windows Vista and in Windows XP This article discusses how to troubleshoot possible issues that you may experience when you use Windows Internet Explorer 7 or Windows Internet Explorer 8 on a computer that is running Windows Vista.
http://kbalertz.com/Feedback.aspx?kbNumber=936215
(http://kbalertz.com/Feedback.aspx?kbNumber=936215)