Customer Reviews: Ultra-Fast ASP.NET: Build Ultra-Fast and Ultra-Scalable web sites using ASP.NET and SQL Server
Amazon Vehicles Oct16 Amazon Fashion nav_sap_plcc_ascpsc Electronics Holiday Gift Guide Starting at $39.99 Halloween Candy Cozy Knits Book 2 or More Hours of House Cleaning on Amazon pbskids pbskids pbskids  All-New Echo Dot Starting at $89.99 All-New Kindle Oasis GNO Shop Cycling on Amazon STEM

Your rating(Clear)Rate this item

There was a problem filtering reviews right now. Please try again later.

on November 6, 2009
One of the author's stated goals for this book is "to help remove some of the fog that may be masking the end-to-end vision of the technology and to help you see the beauty and the full potential of ASP.NET and SQL Server." He does an excellent job of doing just that.

We all want our web applications to run lean, clean and fast, but how do we best spend our time doing so? You might ask, "Should I spend more time improving my caching strategies? How should I approach it?" or "Should I spend my time trying to optimize IIS's performance? Where do I begin with that?"

With so many different ways to approach any given problem, you could spend days or weeks learning all the different ways you MIGHT be able to get your desired results. But if you're like me, after a while you just say, "OK, OK, someone please just tell me the best way to approach this for most situations and I'll tweak it for my needs." That's what you get here.

This book is great. It is a collection of best practices, tips and tricks for architecting your web applications to be both ultra-fast AND ultra-scalable. Instead of listing a thousand things you might want to try out to see if it helps, this book just says, "here is a proven approach that works for most situations, most of the time". Thank you! Let's implement it and move on to the next one.

But more than just telling you, "Do this, then do that", this book explains the Why's as you go along. This is invaluable as it is how we actually learn and integrate these things into our understanding of the big picture.

It is clear that the author has deep and intimate knowledge of the subject. His credentials explain why. He began working with the Internet and writing network-oriented software in the 70's. More recently, he was an architect at the Microsoft Technology Center (MTC) in Silicon Valley where he ran two- to three-day architectural design sessions once or twice each week for some of Microsoft's largest and most sophisticated customers. In understanding their issues and helping them architect solutions he saw many of the same questions coming up time and time again. Questions such as:

* "How can we make our HTML display faster?" (Chapter 2)
* "What's the best way to do caching?" (Chapter 3)
* "How can we use IIS to make our site faster?" (Chapter 4)
* "How should we handle session state?" (Chapter 5)
* "How can we improve our ASP.NET code?" (Chapters 5 to 7)
* "Why is our database slow?" (Chapters 8 and 9)
* "How can we optimize our infrastructure and operations?" (Chapter 10)
* "Where do we start?" (Chapter 11)

I'm thrilled someone has finally written a book like this. It really helps a developer learn and understand the end-to-end big picture... not only the How's but, more importantly, the Why's.

Kudos Mr. Kiessig.
0Comment| 26 people found this helpful. Was this review helpful to you?YesNoReport abuse
on December 2, 2009
This book is simply brilliant, and checking the credentials of the author, a distinguished veteran engineering manager and software architect, one is not suprised in the least. It is one of those special books that pop up now and then - of the kind that would be written by .NET experts such as Juval Lowy or Jeffery Ritcher and a combination of an architectural guru such as Chris Loosley who wrote the now dated but probably best distributed software performance/scalability text ever written High-Performance Client/Server or say Martin Fowler who wrote one of the two quintessential patterns-based software architecture texts, Patterns of Enterprise Application Architecture.

The MS Press Improving .NET Application Performance and Scalability (Patterns & Practices) is similar in spirit and content to Ultra-Fast ASP.NET, but though still useful, it is quite dated (published 2004, that is before .NET 2.0/ASP.NET 2.0) and also much broader in scope and a bigger tome. In contrast, Ultra Fast targets ASP.NET and is very up-to-date, very readable and practical. By limiting the scope to ASP.NET and MS platforms he was able to comfortably and expertly cover all tiers, from the web front-end through the web/app tier to the data and infrastructure layers. Similar books exist for the LAMP platform (e.g, Building Scalable Web Sites: Building, Scaling, and Optimizing the Next Generation of Web Applications and High Performance Web Sites: Essential Knowledge for Front-End Engineers) but this is the only up-to-date such book for ASP.NET and I highly recommend it, as other reviewers have rightly said, for not just the advanced but beginner and intermediate ASP.NET developers, architects and development project managers. I would however, suggest that one gets this book along with what appears to be the quintessential, modern software architecture text - due to its sheer quality and applicability combined with concise coverage of just about all dimensions and viewpoints of contemporary real life software architecture, Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives. Splendid stuff!

I think I may not be alone in believing that a similar text is much needed that would cover the Win-forms/Desktop client application space mirroring the current text. Such a text would delve into the performance scaling considerations of Threading/New Parallel features for multi-processors; WCF/Asmx Web Services, REST/SOAP, ADO.NET/EF/LINQ-PLINQ/other ORMs such as NHibernate, etc. and be structured similarly to Mr. Kiessig's current text. Hope Mr. Kiessig will accept the honor!
0Comment| 12 people found this helpful. Was this review helpful to you?YesNoReport abuse
on November 30, 2009
I have been programming in ASP.NET for a few years now but still have lots to learn in my opinion. I know how to create fairly robust ASP.NET websites with AJAX, membership roles, with a few data business objects and so forth. But one thing I had very little knowledge of was how to make my ASP.NET more efficient and run faster.

I love ASP.NET, C# And the whole .NET framwork, but I must admit it can be a little slow compared to other technologies and many of the newer AJAX controls have lots of overhead to deal with. Of course with with 'magic' of AJAX, these ASP.NET controls can make a website feel like a windows desktop application but it does have its vices which id overhead of the viewstate among others.

This is the first and only book that I have found that really focuses only on how to make your ASP.NET web pages, more efficient and load and run faster. There are a few other books for general website performance (i.e. Even Faster Websites by Steve Souders) but that is for general topics like CSS and JavaScript, not ASP.NET specific.

Here are some of the many topics you will learn from this book:

*A way of thinking about performance issues that will help you obtain real results.
*How to apply key principles that will help you build ultra-fast and ultra-scalable web sites.
*How to use the ultra-fast approach to be fast in multiple dimensions. You'll have not only fast pages but also fast changes, fast fixes, fast deployments and more.
*Techniques that are being used by some of the world's largest web sites.
*How to structure your HTML and CSS to create pages that load ultra-fast.
*Tips for using Silverlight, Ajax and IIS 7 to improve the performance of your site.
*How to use comprehensive caching at all tiers to deliver content faster.
*Why you should avoid traditional session state and how to make the best use of cookies.
*Tips and tricks for optimizing your ASP.NET and SQL Server code for performance and scalability.
*How to use Analysis Services to offload your relational database.
*Why many sites that serve individual pages quickly are not scalable.
*How to avoid common pitfalls that can have an adverse impact on your site's performance, both now and as it grows.
*How to apply an end-to-end systems-based approach to web site performance and scalability, which includes everything from the browser and the network to caching, back-end operations, hardware infrastructure, and your software development process.

This book is a must for any ASP.NET for any ASP.NET developer, whether you are a beginner or advanced. Actually it is even better if you are a beginner/intermediate because you can take the techniques and tips taught in this book as you learn ASP.NET instead of going back to previously built ASP.NET websites if you are and advanced user.

Either way, get this book, you will not regret it!
44 comments| 15 people found this helpful. Was this review helpful to you?YesNoReport abuse
on August 30, 2011
Kiessig has written an excellent book. He discusses numerous techniques that you can implement in your code to squeeze performance and scalability. More importantly, he champions a mindset of viewing coding/architectural decisions through the lens of ultra-fast and ultra-scalable. It never ceases to amaze me how performance and scalability take such a backseat in so many IT departments and software shops. Developers fire up NHibernate without even really analyzing the performance/scalability considerations of that decision. Of course, inevitably, an oh s$%$ moment occurs and all the devs scramble to find a solution. But there usually isn't one, short of scrapping the bloated code base that never should have been developed in the first place.

The only area where I have any disagreement at all with Kiessig is with respect to ORM. Kiessig states quite correctly that the "performance and scalability [of ORM] is usually very poor." (There's an understatment!) Kiessig goes on to say: "in their current form I can't recommend any of them in high-performance sites, in spite of how unpopular that makes me in some circles." This advice is worth the price of the book a hundred times over. It's also interesting to note Kiessig's observation that this view of ORM makes him "unpopular." Of course it does! He's criticized the OO/ORM "religion". OO/design pattern astronauts are more dogmatic than fundamentalist Christians. Calling out their bloated, non-performant coding practices subjects you to their derision. But thoughtful developers must hold firm.

Let's beat this horse just a bit more. Kiessig says that it might make sense to use LINQ/EF in very limited circumstances such as protoyping and small-scale projects. I strongly disagree with this for two reasons. One, prototyping code often finds its way into production code, thus allowing ORM poison to seep into a production environment. Second, small-scale projects often expand into larger ones and so, again, ORM code could very easily pollute a production environment. Further, I believe that it's crucial to understand not only that ORM has performance/scalability problems, but why ORM is philosophically/theoretically flawed (Hint: the "problem" ORM is trying to solve doesn't really exist, and even if it did, ORM is absolutely the wrong "solution").

Finally, and I promise this is my final jab, I think Kiessig should have put his recommendation against ORM on page one. Why? Because no decision will have a greater impact on performance and scalablity (and maintanability and extensibility for that matter) than the decision not to use ORM.

I want to highlight two other points Keissig makes. The first is about testing. With respect to TDD (Kiessig refers to it as "test-first development"), he states: "I can't endorse its use in real-world environments. My experience has been that it doesn't produce better code or reduce development time compared to other alternatives." My experience and sentiments exactly. But TDD is part of the religion along with ORM. Although it doesn't have the mammoth, project-killing potential of ORM, TDD will nonetheless blow through a lot of developer time with very little to show for it. Legitimate, well-designed unit testing is, of course, a completely different story.

With respect to architecture, Kiessig states: "It should come as no surprise that I favor flat architectures, because they tend to minimize round-trips." Eureka! But then OO astronauts who love the idea of distributed computing and out of process calls won't be able to brag about their 7-tier architectures. I suppose they'll have to impress me with their implementation of a polymorphic facade on top of a cross-bridge-singleton-adapter, called through multiple, inherited generic interfaces, abstracted through a dependency injection container, all done in only 10 times the lines of code required by those pesky database-centric developers.

Despite the digressions here, I think every .NET developer should read this book, and, more importantly, change how they think about building software systems.
11 comment| 7 people found this helpful. Was this review helpful to you?YesNoReport abuse
on April 1, 2010
I picked up this gem of a book when it first came out in eBook format during the PDC. I sent it over to my Kindle and got through the entire book during session downtimes. I planned on being the first to post a review of this book on Amazon but I've sat it out too long and will now be the fifth review.

The first four reviewers did a pretty respectable job of providing and overview of Mr. Kiessig's qualifications and the book content and have all awarded the book the entirely deserved 5 start rating. Rather than pile on more information about Rick Kiessig or what's in the book, I'm going to tell you why, as a person who has spent a good amount of time looking at .NET application performance, I recommend this book to every person I work with as mandatory reading:

* Although there are great rules out there for web site optimization and corresponding tools to test these rules (e.g. Yahoo's Yslow), it's great to see the client side examples from an ASP.NET specific point of view.
* It's interesting to see someone who bucks the current trends and provides some real insight on when it's appropriate to use ORM's, saying essentially that objects are good but ORM's might not be the best engine if you're building a Formula 1 race car.
* Try finding another book that will even touch web gardens, partitioning an application into different AppPools, or using the /3GB switch. Try finding a Microsoft engineer who will talk to you about those items and offer objective guidance.
* The write-up and source code on asynchronous web pages and background worker threads - worth the price of the book alone.
* Creative, out-of-the-box ideas: using SQL Server Express for caching, using BI services to support the web tier of the application, etc. - not the kind of advice you find in your typical MSDN article.

It would be interesting to see how ASP.NET MVC and Silverlight play out performance-wise but alas, these technologies are a bit newer and Mr. Kiessig had to get a book to press. I'd gladly pay for the second edition of this book if it includes a couple of additional chapters that address these technologies. Until then, this is by far the most thorough and pragmatic book on ASP.NET performance to be had on the market. It might be simply an eye-opening read or the book that saves your skin one day. Either way, you won't regret picking this book up.
0Comment| 7 people found this helpful. Was this review helpful to you?YesNoReport abuse
on February 15, 2010
Five stars. I am performance consultant specializing in Microsoft technologies. There are very few resource available in consolidated form that a guy like myself could use on a daily basis. Of course there is an epic work from p&p - improving .net performance and scalability - beyond that it is a blog hunt. Ultra fast ASP.NET book was a huge surprise to me - it delivers on its promise, it is prescriptive. It establishes performance principles, it sets performance goals, explains what affects performance and why, and it guides what needs to be done on each and every layer of web application - browser, ASP.NET, IIS, SQL Server - just to squeeze the last byte of performance out of it. And it is updated to latest MS tech. I have developed a deeper trust with the book not only after reading the author's bio, but also after reading topics such as distributed caching - the author shares his own opinion to it which is far from popular and the one that strikes chords with my own experience in the field. No surprise it became my tool of trade very quick. I highly recommend the book to anyone who cares about performance and user experience - be it a developer or a seasoned performance engineer.
0Comment| 4 people found this helpful. Was this review helpful to you?YesNoReport abuse
on October 9, 2010
If you are serious about achieving best ASP.NET practices, this is the book for you.

I've been developing intranet sites for several years. Performance was not a high priority until recently. One site in particular was becoming congested and needed "tweaking". Additionally, I am embarking on some commercial sites that I don't want to get wrong.

I've only read a small fraction of this book and already it has paid for itself.

In much the same way that achieving excellence in Win32 development requires knowing what goes on under the hood, so too does ASP.NET development.

It's not enough to have a good understanding of your ASP.NET language of choice. You must understand the underlying architecture of the web, and client server interaction, as well.

If there's one book that should be in your Christmas stocking (:insert religious holiday of choice here:), birthday wish-list, or self-indulgent impulse buy this is it.

0Comment| 3 people found this helpful. Was this review helpful to you?YesNoReport abuse
on June 16, 2014
This book has a lot of high-level suggestions about how to facilitate high performance, scalable web development.

The out-of-date parts include: postbacks/webforms content, Silverlight, dealing with multiple JavaScript files (ASP.NET 4.5 takes care of this with bundling). Some of the high level suggestions about eliminating round trips are pertinent, many are obsolete given the industry's move toward single page applications (SPA's). Also it's tailored for IE7, and no one was really using webkit anything back then.

You might not realize you're into an obsolete suggestion until you're well into a block of text.
0Comment|Was this review helpful to you?YesNoReport abuse
on July 25, 2010
I'm reading this book cover to cover, it's that good. It will teach you and be useful as a reference guide later. There are "best practice" check lists at the end of each chapter and at the end of the book. Scan through them, find one that looks interesting and go back into the applicable chapter to learn more.
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse
on April 20, 2012
Awesome! Best computer book in my collection. Clear. Concise. Probably should be named Ultra Fast Performace since it spans lots of areas beyond ASP.NET to even have a chapter on MS SQL Server, a chapter on MS SQL Analysis Server, and a chapter on Infrastructure. Has at least three to four good usable tips per page. The final chapter of putting it all together is a great recap of what you learned.
0Comment|Was this review helpful to you?YesNoReport abuse

Customers also viewed these items

Need customer service? Click here