IIS 7: How Mosso is Taking Advantage of Microsoft’s New Hosting Platform

About six months ago, Mosso was approached by Microsoft to participate in their “Go Live” program for IIS 7. We were extremely eager to get involved in this program because we had literally pushed IIS 6 to its limits and we knew that we needed to make an early investment in IIS 7 in order to continue offering a compelling platform. After evaluating the features and advancements, we were sold and began developing the platform that will allow us to continue to scale our system beyond the capabilities of IIS 6.

Simplified Management
One of our biggest pain points with managing IIS 6 in a multi-tenant/web farm environment is the inability to replicate a single configuration to multiple cluster members. We worked around this problem by developing a custom replication agent, but it was extremely inefficient and error prone. Eliminating this bottleneck allows us to reduce our hardware requirements by 16 – 25% per cluster. Additionally, it means we no longer have to monitor a process that frequently caused problems for new sites customers create. With shared configuration in IIS 7, site configuration changes are replicated in real time as opposed to as long as an hour.

So far, the only problem we’ve experienced with this configuration is the inability to store the configuration on a network share and manage the server remotely. Microsoft is aware of the issue and is working to provide a fix, as this is a configuration they are supporting. Most likely this is an issue with impersonation/delegation in a two-hop authentication scenario.

Microsoft has also reduced the attack surface of IIS by fully modularizing the entire platform. When configuring IIS, you have the opportunity to customize the installation to fit the needs of your environment. Not only is this a benefit for our system operations team, but also for our customers because it means that their applications will benefit from these enhancements as well.

We also took a step forward and built our offering on a 64-bit platform. While our application pools are running in 32-bit mode by default, this will give us much more flexibility in how we scale the platform in the future. IIS 6 was plagued with limitations on non-paged pool memory, which will not be a limiting factor in our new configuration. While most web applications themselves do not benefit from a 64-bit application pool, we’ll be more than happy to make the switch for you.

Provisioning and Managing IIS 7 Hosted Resources
Less than a year ago, I was tasked with developing a new framework for provisioning sites on our IIS 6 platform. The only technology that could really do everything that we required was the antiquated Windows Management Instrumentation (WMI) API. This was a very daunting and challenging task, even for a developer with five years of experience in Windows development environments. Most of the development was focused on trial and error. As a developer, I felt Microsoft had stuffed IIS 6 management into an unintuitive WMI container that really did not make sense for the application. After enduring a painful development cycle for our IIS 6 services, learning about the changes Microsoft had made to the management tools was a relief.

Developing the management tools for IIS 7 was truly a dream come true and shows that Microsoft really went the extra mile to ensure the management tools had received the same TLC that the rest of the platform did. I was surprised at how easy it was to interface with Microsoft.Web.Administration and make the API accessible over WCF. In fact, developing the new services took about half of the time that our original IIS 6 services required, which is a testament to the level of effort that went into these new APIs.

The .NET Framework 3.0 included WCF, which gives developers powerful new tools to develop interoperable web services. This was a major requirement of our new platform as our backend core provisioning system is completely Java-based. Integrating with our provisioning system via Axis2 was extremely straightforward and we weren’t forced to make any compromises to allow the two disparate platforms to work together.

If you’re like most of us, and developing with a heterogeneous platform in mind, then WCF will likely go a long way in meeting those requirements.

Built for Developers
For developers, Mosso’s offering of IIS 7 is extremely compelling. In fact, the offering has been engineered from the ground up with developers in mind, and many of us on the Mosso team use our own platform to develop applications. We took what we knew people disliked about our IIS 6 platform and we used that feedback to build our new offering. One of the biggest complaints we heard from developers was that they wanted to be able to run applications in full trust. While it wasn’t feasible in IIS 6, we were able to work directly with Microsoft to engineer a system that is able to accommodate this popular request without compromising the security, scalability, and performance of other users running in our cluster. We’re excited to open this opportunity up to our customers for the first time.

As with IIS 6, all Mosso customers are allocated their own application pool so that they can be confident that other applications running on the cluster will not interfere or cause an adverse impact on their applications. By doing this, we can optionally tune your application pool and your site so that it is optimized for your own needs. This is something that separates us from many of the other “budget” hosting providers.

Additionally, our IIS 7 offering inherits the same redundant, load-balanced platform that has allowed Mosso to be successful. As a developer, you no longer have to be concerned about resource utilization. We handle all of that for you. All you need to do is code it, load it, and watch it scale.

Our IIS 7 platform also includes full support for .NET 3.5, which provides numerous incremental improvements to the .NET Framework. Some of the new features the .NET 3.5 framework has are:

  • LINQ
  • Extension Methods
  • Lambda Expressions
  • Automatic Properties
  • Object & Collection Initializers
  • Anonymous Types

We are one of the first hosting companies to fully support .NET 3.5. While .NET 3.5 is only advertised as an incremental improvement, the new features offer a lot more flexibility for developers.

Start Developing!
While we’ve launched IIS 7 as a beta offering, we would encourage you to become more familiar with the features and start testing your applications on this new platform. We’ll be announcing plans soon to migrate all of our IIS 6 sites over to IIS 7. We encourage you to let us know what you think by e-mailing features@mosso.com.

Josh leads product development for the Cloud Platform Product Line where he is responsible for product management, engineering, and operations for the Cloud Sites, Load Balancing, Database and DNS product offerings.


  1. Very nice. What other hosting company is willing to stay this uptodate with technology? Not many. Keep up the good work Mosso.

  2. Josh, I just started looking for a hosting provider and stumbled on your site. So far, I am really impressed with your offering and technology. The IIS 7 (and .NET 3.5 ) implementation really seals the deal for me.

  3. Damian,

    I’ve been a customer now for a little over a month. I scoured the internet for almost a year signing up with hosting providers. I did colocation, I did shared server. I almost started to sign up with a managed server provider, but then we found Mosso — and are we ever glad we did. They are awesome!

    The IIS7 setup is still beta and needs some configuration changes before it’s production ready. I experienced this by mistake when setting up a new client.

    In the meantime, you won’t find a better provider for a system like this. Performance is great. I haven’t had any issues with uptime. And the support staff are always available and extremely helpful and nice.

  4. sounds like some awesome technology that went behind all of this. looks like mosso has some great minds… keep it coming. incredible stuff josh.

  5. Hi Josh,

    Brian Delahunty here from the IIS 7 team. Just reading your post and I noticed this “So far, the only problem we’ve experienced with this configuration is the inability to store the configuration on a network share and manage the server remotely.”

    Feel free to contact me (you should have my address from this comment) and we can chat about the issues you are having and how we can better address them.


  6. I was reading all over your site, and i am impress by it contents, i hope one day you wil get to a spanish speaking community, Actually i will traslate all your company advantages to spanish because i believe it will be a great deal of interest , i am From Puerto Rico this is a company that will change many areas of our get what i give “thinking”

    thank you
    Future Customer

  7. Am reading a lot about Mosso on different websites … seems like the performance is very low, the response time per request is more than 5 seconds and it sometimes goes more than 20 mins.
    When I browse Mosso.com itself, the website is sluggish and its slow … am bit curious why the website Mosso.com is so slow ? Is it the same behaviour for other websites hosted on Mosso.com?

    Am seriously interested on Mosso to host RoR applicatin. … Can someone clear my doubts?

  8. @Dash: Glad to hear you are researching Mosso! Please let me know if there are some questions we can answer. I’m very interested in your response time issues. I’d love it if you could email me and let me know where you are located. A bit of background: according to the monitoring we have, our site pages load in an average time of 626.35 ms. (That’s across about 15 worldwide monitoring locations. Reading, England, for example clocks in at 1,279 ms.) Speed is as important to us as uptime and I’d love to know more about what you are experiencing. You can email me at founders@mosso.com. Thanks!

  9. @Brian: Thanks for the offer. We’ve been working with the product team and they sent us some proposed workarounds. We are in the process of testing those now. I’ll shoot you an e-mail early next week and we can discuss the issue some more.

    Thanks for the feedback!

  10. @dash: You should get high-speed internet. I have no doubts you have dial-up or maybe you are accessing it by phone. 😀

    Its all about the Mosso!

  11. Wow, am I excited!

    I have been looking for something supporting IIS7, but it recently became critically important when my current provider could not get my VPS back up even after 3 days (and it is still down right now). I checked out rackspace, which has a good reputation for uptime service, and they recommended mosso when I asked to start with something small.

    I have both LAMP and .NET 3.x needs, and was I surprised to see mosso supports PHP and .NET with clusters! I think it is awesome that mosso is eager to leverage IIS7, which is something I have wanted to do myself, but don’t have the resources or time.

    So now after racking my brains for the past three days about how I can come up with the equivalent of a clustered, load-balanced, redundant hosting solution with uptime guarantees and available admin support, I think I found it, and I am betting my money on it.

    I really appreciate the enthusiasm and readiness of mosso to come up with such a great hosting solution and proactively make sure it is great in all aspects. Keep it up!!

    Guy N. Hurst

Comments are closed.