View Complete Post
Writing a Web application with ASP.NET is unbelievably easy. So many developers don't take the time to structure their applications for great performance. In this article, the author presents 10 tips for writing high-performance Web apps. The discussion is not limited to ASP.NET applications because they are just one subset of Web applications.
MSDN Magazine January 2005
When developing high-performance applications for the Web, developers often must choose between performance and ease of development. With ATL Server, new with Visual Studio .NET, developers get the best of both worlds. ATL Server uses a tag replacement engine written in C++, provides a simple programming model, and promotes enhanced performance and easy debugging. This article presents an overview of the ATL Server architecture, then creates a basic ATL Server project. It then goes on to explain processing SRF files, HTTP streams, forms, cookies, and header files. Managing session state is also discussed, along with file uploads and performance monitoring.
Shaun McAravey and Ben Hickman
MSDN Magazine October 2000
Imagine I have a class MyTestClass. And I need an instance of this Type throughout my whole web application.Now there are several possibilities to accomplish this.
1. Make MyTestClass static, make it contain static methods onlyProbably the most performant solution. I'm not feeling lucky about using static fields though. Thread safety? What if my static class contained a static System.Collections.Queue? Good idea? Bad idea? Better idea?What's the best way to write into a Queue from many different threads at the same time anyway...
2. Make MyTestClass a singletonGood. However I don't really like the idea of checking for an instance of a Type every time I call a method. Performance is an issue. Imagine for example a logging class.
Would it make any sense to store a reference to my singleton instance somewhere to access it directly? I'd prefer something like HttpContext.Current.MyTestClass.Is this a common approach? It should be possible using the decorator pattern I guess... probably not that easily - I didn't look into it yet.
Any suggestions? :-)
This article discusses the Project Linker tool and other techniques to create applications that target both WPF and Silverlight from a single code base.
Erwin van der Valk
MSDN Magazine August 2009
See how you can gain efficiency in surprising ways by looking closely at your algorithms, the data they operate on, and the hardware you're designing for.
MSDN Magazine October 2008
Performance problems can creep into your Web app as it scales up, and when they do, you need to find the causes and the best strategies to address them.
Richard Campbell and Kent Alstad
MSDN Magazine April 2008
ASP.NET provides a number of ways to maintain user state, the most powerful of which is session state. This article takes an in-depth look at designing and deploying high-performance, scalable, secure session solutions, and presents best practices for both existing and new ASP.NET session state features straight from the ASP.NET feature team.
MSDN Magazine September 2005
The Win32 Windows Sockets library (Winsock) provides mechanisms to improve the performance of programs that use sockets, and the Microsoft .NET Framework provides a layer over Winsock so that managed applications can communicate over sockets. To use all these layers to write a truly high-performance socket-based application requires a little background information, as Daryn Kiely explains here.
MSDN Magazine August 2005
With reflection in .NET, you can load types, understand their members, make decisions about them, and execute, all within the safety of the managed runtime. But to use this power wisely, it's important to understand the associated costs and pitfalls to keep performance impact at a minimum. This article explains how.
MSDN Magazine July 2005