Sunday, November 22, 2009

Setup hosting infrastructure with Mosso

Setting up hosting account for my website. I already had a hosting account with globat.com ($100/year) and GoDaddy ($5/month), but after using them for a while, I decided to go with a better provider. I wanted an elastic cloud to dynamically take care of my load. Right now, I don't know how much my site is going to pick up and in these days of high speed social networking, a site could be inundated with visitors or ignored totally and this process is somewhat random. This makes allocating the site resources pretty tricky.

There are a lot of options. The most basic one is getting a shared hosting space, where you will be sharing server resources with dozens of other small fish. You might get a few Gigs of space, but it is the bandwidth and RAM where you might feel pretty constrained as things will be shared. You can get a dedicated server where your app will be the only thing running in the server, but that could cost $200+ bucks per month. And when you need to handle more traffic, you need to keep buying more servers in a time consuming process.

If you set up too big a server and nobody visits, you would have just blown away a lot of money, and if you have too little resources and a lot of people happen to visit, you would not just lose the potential visitors, but also infuriate a lot of them due to the slower page download. The entry level hosting accounts with GoDaddy or Globat can't handle more than a couple of dozen users in parallel. If you need to support 1000 concurrent users you need a dedicated server.

After considering the options, I wanted to go with an elastic cloud solution, where the hosting provider could dynamically allocate you more resources based on the traffic and you will be charged based on the usage. there are independent charges for compute cycles, hard disk space, RAM usage and bankdwidth usage. Amazon EC2 and RackSpaceCloud (Mosso) both offer this kind of a setup. EC2 is a little hard to setup, so I went with Mosso.

Mosso offers two options - Cloud server ($10/month) which is really barebones with a lot of flexibility, and you will be charged for all the stuff, and Cloud Sites ($100/month) that comes with a big package of free cycles, RAM and diskspace. For my median traffic estimates Cloud Sites seem to be more economical and easy to setup, though I might move to Cloud Server if the traffic is not as per my median estimates.

I setup 5 email accounts for the company and moved the initial content. I plan to launch a site for one of my projects from there next month, and I will know when the rubber hits the road.

1 comment:

  1. Balaiji -

    Understood reasons for choosing Mosso, but how abt actually writing your app as truly scalable (multi-tenant, configurable)? Did you find outsourcing company in India that could do that for you?

    ReplyDelete