If you seen my blog on Application Request Routing (ARR) v2, you know I am a big fan of how ARR opens up new capabilities for IIS around application request routing, edge caching particularly in high definition media delivery, and Tomcat-type of configurations. We release ARR as a Web server extension that you can download and install onto Windows Server 2008 and later – as with all our Web server extensions, ARR is free to download, available in 9 languages, and fully supported by Microsoft. ARR is being used in production by thousands of customers who deploy ARR in enterprise, Web hosting, and media delivery topologies. I wanted to spend a little time to talk about how one customer, MaximumASP, has built a business line on top of ARR.
Cloud Hosting with “Elastic Scale” MaxESP Offer
In November 2009, MaximumASP launched a shared hosting offer called MaxESP. MaximumASP targets customers who are looking for higher-end (high SLA around customer support and uptime) ASP.NET hosting. The typical MaximumASP customer is a Web developer who builds sites for small and medium-size businesses and prefers to focus on managing applications, not servers. The new MaxESP offer targets customers who are looking for cloud type hosting, but at a consistent, predictable price with high-end support. This type of customer has a consistent utilization pattern for their hosting service and wants a consistent price per month to assist cash flow, with experience in Microsoft platform support and infrastructure.
Here’s some of the services that a developer gets with a MaxESP offer:
- 3 independent websites that you can set up unlimited host headers, with the ability to buy more at anytime and get a unique IP address
- Bandwidth metering provided in the control panel to analyze by IP address
- Each site can be delegated different user administration and managed via IIS Remote Management
- Use / create users who have access to your control panel. Create new *custom* users that are only allowed to access your shared site through IIS Remote Administration and FTP/WebDAV
- Supports ASP.NET 2.x, 3.x and Classic ASP. ASP.Net 4.0 will be live immediately when it’s RTW
- The latest of many of the IIS7.x web server extensions, including Web Deploy for easy publishing and Database Management
- Centralized logs from a multi-tenant server farm by the hour. They take logs generated by your site from across the farm and consolidate them into a single log file per hour for easy download, management, and analysis
- File level backup and restore with a 7 day retention period
- Use a software VPN by clicking the VPN menu option
Other items planned for MaxESP include creating a shared database on a private shared SQL Server.
The MaxESP developer often doesn’t care or doesn’t know how to build an app that scales on a Web farm. IIS ARR helps abstract the host server topology from that customer. In the MaxESP control panel, a developer can change the scaling of their app to run on more than one server, or add what MaxESP calls “units.”
If you want to “scale out,” you can move from a single Web server (default) to up to 8 nodes.
You can also add resources to your single server or server farm topology for your app hosting. MaxESP calls these resources “units".” A MaxESP unit can be an additional web site, load balancing a Web site, or adding disk space. You can select your options like any shopping cart, and the additional capacity spins up in the data center behind your app.
This is pretty cool for developers because it means you can expand your capacity for high traffic times, like the Christmas season, and there’s no need to do any mucking around with server settings or server topologies to get their extra capacity in place.
ARR in the Data Center
In the MaxESP data center, IIS ARR on Windows Server 2008 R2 is plugged in between hardware load balancers (now Server Irons from Foundry, soon to be F5) and the Web server hosting tier. MaximumASP uses 3 ARR servers in the production environment, with redundancy at each tier.
Because ARR takes a dedicated machine that can be easily added to an existing topology, MaximumASP was able to bring up the ARR box online and immediately scale traffic across unlimited web servers. Some of the packet level scaling still happens with the hardware load balancers, but ARR provides the host name header routing. By using ARR and IIS shared configuration, MaximumASP gets to automate provisioning/management tools to keep the farm clean, synchronized, and performant. MaximumASP administrators also say they like using the different algorithms for routing in ARR to configure traffic segmentation.
MaxASP in Action
I am pretty excited to see ARR being used to power this new business line for MaximumASP. I gave it a shot myself, and deployed BlogEngine.NET on MaxESP. Go ahead and check it out at: http://iisshow.maxesp.net/. I have it scaled out across two nodes using the control panel so bring it on!