May 27, 2008

Selecting a DotNetNuke Hosting Provider Revisited

Three months ago I created an article discussing my thought process on selecting a hosting provider for DotNetNuke installations.  I recently modified that article due to a recent change in opinion.  I have sense decided to re-visit the article entirely as I wanted to expand a bit on a few items that were referenced by others in the comments with the older article.  As most people are aware my hosting provider of choice is 3Essentials, being with them for almost a year and a half now I have only good things to say about them, however, I'll be the first to admit that they might not be for everyone.  In this article I will look at the various items that lead me to select and retain 3Essentials as my hosting provider.  These statements in no way are considered offical, and you MUST take the time to do your own research to form your own conclusions before making a decision.  Moving hosting providers is not all that complicated, but it is a somewhat complex and time consuming actiivity and something that you don't want to do unless you have to.  If you are having problems finding a hosting provider that meets your needs, please feel free to e-mail me at msellers@iowacomputergurus.com and I'll try to help you out with the decision. 

The Basics

My first step when evaluating provides is to look at the bare bones basic functionality provided by their services. I will break this out into three separate areas to cover the general aspects of hosting; supported features, disk space, and future growth.

Supported Features

The most important items to review at first with a hosting provider are the technologies supported by the plan. Since DotNetNuke 4.x and later based on the ASP.NET 2.0 framework and utilizes SQL Server for its database backend we establish a minimum baseline of features that must be supported.  This includes Windows based hosting with ASP.NET 2.0 support, and access to at least 1 SQL Server database.  Now these are minimum features that must be there before you can even install DotNetNuke, but it is very important to validate these features to ensure that you do not have a plan that will not work for you. 

Third-party dataproviders do exist to allow support of other database engines, however, the use of those is typically limited to more advanced users and their usage and requirements are well outside the scope of this article.

Disk Space (Website and SQL) & Bandwidth

The next areas that you need to investigate when selecting a hosting provider is the allotment of disk space and SQL Server database space.  A typical clean DotNetNuke installation will result in a website file system size of 20-25Mb and a database file size of around 11-15Mb.  Ensuring that you have the proper room to grow on both the database and file system side is very important.  To give you a general idea, this website which is hosted on a DNN installation that supports 5 individual portals, 200-250 tabs and over 3500 users has a database footprint of about 52Mb and a filesystem footprint of 500Mb.  This information was provided only as an example and is in now way an illustration of the type of space requirements your site might require.

When considering the space needed for your site, you need to look at 2 different aspects.  The first is how many files you will be loading, in 99.9% of circumstances files served to users via DotNetNuke are stored in the file system and not the database.  Therefore these documents size will be deducated from your filesystem allotment and not the database.  The second is to consider the number of pages, static html content, forum posts, users etc.  This is the hard one as it is very hard to predict the growth of a site with any accuracy.  However, all of these items are the direct makers of your database size.

I have found that for a typical DNN installation users are able to get by with a hosting plan providing 100Mb SQL Server databases.

After you have determined your needs for SQL Server and file system size, you must evaluate your needs for bandwidth.  Bandwidth is typically measured as the total incoming and outgoing traffic from your site via ANY communication channel to the server (HTTP, Email, FTP, etc.).  This is an area where you have to use a bit more handy calculation as you want to make sure you have enough bandwidth because bandwidth overages can be VERY expensive!

Future Growth

I find that this is one area that many individuals do not look at when first setting up a DotNetNuke website, but it is very important to take into consideration the future growth of your site.  Will you potentially need to host more than this single DotNetNuke site?  Potentially a subdomain with another .NET or other application?  How about multiple portals, is it possible that in the future you will need to host more than 1 domain from your current installation?

These are all very important questions and depending on your specific answers some hosting providers might not be for you.  For example PowerDNN is a hosting provider that ONLY allows DNN installations, and for myself, that is not an option as I have multiple DNN and non-DNN sites that I maintan for my business, IowaComputerGurus Inc.

The other area to look at here is does a provider allow you to upgrade to a different plan, or if on a multi-domain plan allow you to dynamically reallocate your usage.  One reason I really like 3Essentials is that I have a Reseller 10 plan, but I can take my total disk, bandwidth, and SQL server allotments and divide them however I want between my various sites.  So for example I have 3 times the bandwidth and SQL server space dedicated to this site than I do others on my plan as this one has the most traffic.  This type of flexibility is nice as it allows you to get the most for your hosting dollars.

Dedicated App Pool and Full Trust?

The next thing that I look for when evaluating hosting providers for DotNetNuke support is to see if they provide dedicated application pools and support full trust mode.  A dedicated application pool isolates your DNN site from all other sites on the hosting server, this prevents issues on other sites from affecting your site.  This is something that not all hosts provide and is something that in my opinion is very helpful.  The support of full trust simply makes things easier when working with DNN, when not in full trust mode some modules may not work, especially those who try to communicate to other websites such as the News Feeds Module.  If you are able to run DNN in Full Trust you will minimize the amount of trouble you have later when working with modules.

Supporting Installation on Root

One issue that plagues users of GoDaddy.com hosting is that they do not support installation of DotNetNuke at the root of a domain, http://www.mysite.com as they cannot set the permissions properly.  You can get around this on GoDaddy using a "hack" of sorts, but in my opinion if you cannot install DNN on the root of the domain and you cannot grant full file permissions to the ASP.NET worker process you MUST move to a different hosting provider.

DNN Support (Where to get it)

The next item to consider is how much DNN support do you expect from your hosting provider?  Do you expect your host to offer an automatic installation so you can get DNN up and running without any manual installation?  Do you want your hosting provider to upgrade your site for you automatically?  Or are you comfortable doing these items yourself, or finding a third party person to handle these items on a case by case basis?

These are important questions to ask yourself and aslo if you decided that you want a hosting provider that "does it all" you will want to further investigate your selected provider of choice to ensure that you agree with their terms and conditions.  Some of the "we do it all" providers will upgrade sites and apply non-standard "patches" to a DNN installation prior to notifying the customer.  For some people this is ok, however, for others like myself this is a critical issue.

Regardless of which option you choose, be sure that you know where you will go for DNN support should you need it during installation, upgrade, or any other time while running your DNN site.

Customer Support Response

Another item to consider is the responses of the customer service team.  Regardless of what hosting provider you select you will at some time interact with their customer support team.  It is important to know their standard response times, as well as to get a bit of history from current customers if possible regarding the quality of these responses.  I find that this is something that doesn't necessarily get addressed until after a provider has been selected and at that time it is almost too late.

I highly recommend trying to contact the support team, just to see how quickly you get a response, try them out to see if you will be able to work with their schedule and level of service.

Uptime/Reputation In Community

The final item that I research with a hosting provider is their posted uptime and the overall view of the provider in the community.  For example if you search on DotNetNuke for hosting you will find many bad comments about WebHost4Life and GoDaddy, but you will also find many postitive comments about the awesome support of 3Essentials.  I take this information into consideration, but I always treat it with a grain of salt to be on the safe side.  Just as those of you reading this article should validate the information presented within.

My Personal Conclusion

In my previous version of this article I broke down my personal recommendations in three separate areas, I no longer find this necessary.  I have found that for my needs, and those of 95% of my clients 3Essentials has been a great hosting provider.  Certain customers have augmented their hosting provider selection with service agreements with companies such as my own or other third parties to provide assistance with the upgrades and troubleshooting.

The key is to make sure that you have all of your bases covered; hosting, DNN support, and future growth.

Conclusion & Disclaimer

I hope that this article has provided a little insight to the criteria that I use to evaluate and recommend hosting providers for DotNetNuke.  Please remember that these are simply my thoughts and are no way blanket recommendations. 

I am not being paid by 3Essentials for posting this article either and these comments and recommendations are based on my personal experience with 3Essentials hosting.  I am a participating member of the 3Essentials Affiliate program and recommend them to almost all of my clients.

If you have specific questions regarding your hosting needs please feel free to e-mail me at any time. (msellers@iowacomputergurus.com)

tags: DNN
comments powered by Disqus

Content provided in this blog is provided "AS-IS" and the information should be used at your own discretion.  The thoughts and opinions expressed are the personal thoughts of Mitchel Sellers and do not reflect the opinions of his employer.

Content Copyright

Content in this blog is copyright protected.  Re-publishing on other websites is allowed as long as proper credit and backlink to the article is provided.  Any other re-publishing or distribution of this content is prohibited without written permission from Mitchel Sellers.