ASP.NET Performance – Windows Update – a great example for setting performance standards

Much as people love hearing on  the new features of ASP.NET, one of the frequent requests that I receive is around performance counters, high transactional sites using ASP.NET and real world applications that do very well on ASP.NET.  While there are thousands of sites out there running on ASP.NET, many of them being mission critical, our own Windows Update is a great example of high performance.

Windows Update is something all of us use, whether we like it or not.  It helps maintain your system up to date with critical patches, recommended downloads as well as optional add-ins.  Windows Update also periodically provides major updates such as Service Pack for Windows Vista, Office etc., and it is an essential part of your Windows usage.

How does Windows Update cater to a huge use base of an operating system such as Windows and maintains all the transactions / requests for downloads.  Well, the facts, also available in Wikipedia, is as below:-

As of 2008, Windows Update has about 500 million clients, processes about 350 million unique scans per day, and maintains an average of 1.5 million simultaneous connections to client machines.  On Patch Tuesday, the day Microsoft typically releases new software updates, outbound traffic can exceed 500 gigabits per second. Approximately 90% of all clients use automatic updates to initiate software updates, with the remaining 10% using the Windows Update web site. The web site is built using ASP.NET, and processes an average of 60,000 page requests per second.

I think that is quite a huge number of requests per second and to maintain that using IIS, SQL Server as well as Windows Server, it really requires platform stability and performance.

Another great example of performance is our own www.microsoft.com group portal which caters to millions of requests per second on a day to day basis.

Note: The facts and figures are as gathered by me from wikipedia and various other resources and must be used for information purposes only.  The opinions are solely mine and do not reflect those of my employer in any way.

Update: Since quite a few folks pointed out, I wanted to also add that "Just as in Cricket, where you cannot set fielding for Bad Bowling, no technology can help bad coding/design.  It is implied although worth mentioning that best practices, reviews and performance tuning can help improve performance of your application"

Cheers !

posted @ Monday, July 27, 2009 5:10 AM

Print

Comments on this entry:

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by vikram at 7/27/2009 6:30 AM
Gravatar
Thats some good statistics....

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Thanigainathan.S at 7/27/2009 7:21 AM
Gravatar
Hi,

Very nice survey. So the only factor I can notice is the way the things are handled. If we do proper coding and handle things perfectly there will be no wreckage .

Thanks,
Thani

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Istomesmo.com at 7/27/2009 9:08 AM
Gravatar
The link to the Microsoft site is wrong. You missed the "t".

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Craig at 7/27/2009 9:10 AM
Gravatar
Thani, I used to do performance analysis for a Fortune 500 company, and frankly, the only ASP.NET sites that had poor performance were those that were very badly written, as though the developer didn't have a clue what they were doing, or any knowledge of what is slow vs. what is fast. Too often, developers just want to get their paycheck, and don't take the time to do things the right way. All technologies are slow when that happens. Hence the need for group code review. (It's the potential for embarrassment that keeps developers doing things the right way. Sad, but true.) So, the statement, "if we do things perfectly" applies to all systems, not just ASP.NET.

This survey just demonstrates that it is a myth that ASP.NET does not scale well. Web applications in general will almost always scale, if they are built according to best practices.

The real question is, what is the cost of setting up and maintaining that system vs. the cost of setting up and maintaining say, a Java based system doing the same tasks with the same response rate? My bet is that ASP.NET is more expensive to initially develop and set up (licensing, etc.), but has a much lower ongoing maintenance cost. In other words, year 1 cost is more for ASP.NET, but year 2 and 3 cost is less.

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Binu Thayamkery at 7/27/2009 11:13 AM
Gravatar
@Craig Well said about doing it the right way v/s getting it done somehow. Performance of a web application is not a simple factor of technology it is built on, but also depends on other parameters like optimized codin, good patterns & practices, muscle in your server(s), bandwith, data volume, data storing techniques, data access technoques, and lot more data related ones, and more ...
I personally manage very well performing to not so well performing web applications...in any enterprise, this depends on lots of external factors too. Not any one application stands alone and serves the user, but interacts with one or more external apps, legacy systems, etc that add to performance equation too...

In short we need to performance tune our apps, one application at a time (even after you follow the best practices, scalable application infrastructers and technologies)

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Kumar at 7/27/2009 1:16 PM
Gravatar
But the statistics did not mention anything about the hardware. Handling million pages on one server or 100 server makes a lot of difference. Can u tell me how many web servers,DB servers are behind the scenes?

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Milan at 7/28/2009 4:43 PM
Gravatar
How funny... asp.net site itself is very slow, forum especially :)

# re

Left by Jack Niu at 7/29/2009 12:13 AM
Gravatar
60,000 ? How many servers does the update server has?
I once implement a update server on a normal PC, with some logical rules, it only about 200 pages pre second

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Technology at 7/30/2009 1:40 AM
Gravatar
Very nice survey.

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by Naleem and Scurvy at 7/30/2009 11:06 AM
Gravatar
whut happun to blog post with vid on graytust indian chennai developer summit on aspnets ajaxs? it was really useful to me and now itz gone. plz put back up ASAP or send to mi email id naleemandscurvy@yahoo.co.in. url was http://geekswithblogs.net/ranganh/archive/2009/07/29/asp.net-ajax-ajax-control-toolkit-amp-jquery-ndash-gids-session.aspx but now pages no foundz.

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by used macbooks at 8/4/2009 5:42 AM
Gravatar
"As of 2008, Windows Update has about 500 million clients"

THAT IS SO RIDICULAS! lol - their servers must be monumental.

#  ASP.NET Performance

Left by MCSE Training at 8/5/2009 2:17 AM
Gravatar
The statistics are quite informative. Thanks for the sharing.

# re: ASP.NET Performance – Windows Update – a great example for setting performance standards

Left by manolo at 2/6/2010 11:22 PM
Gravatar
<p>Good news! Are you going to splurge on one pair of blahnik manolo this season, these are a great option. blahnik manolo Insectika platform sandals are very sexy and feminine. right now , You can pre-order manolo blahnik from Saks Fifth Avenue (NYSE:SKS) for $695. They also have another pleated Chirstian manolo blahnik store shoe - this time a flat. Check out the blahnik manolo turban skimmers . I love the knot over the peep-toe. Like the sandals and boots, these are also available on pre-order. Maybe, you will too!</p>

Your comment:



 (will not be displayed)


 
 
 
 
 

Live Comment Preview:

 
«February»
SunMonTueWedThuFriSat
31123456
78910111213
14151617181920
21222324252627
28123456
78910111213