The section on non-blocking servers is just plain wrong. .NET and IIS have had this feature for at least ~8 years now. ASP.NET Webforms and ASP.NET MVC both have great support for various asynchronous patterns to support non-blocking operations. ADO.NET also has this built-in. I've been involved with projects that have used these features to great effect scaling into tens of thousands of simultaneous connections per server.