Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

This question is about hardware and hosting, and how to "bootstrap" them.

If you built a really great website, how could you have it hosted at low cost but so that it reassures customers that their data is safe and available.

As an example, what if I have a web application I developed for small companies to use for their accounting, a replacement for Quickbooks. Aside from getting a bunch of money from VCs or Angels, how would you be able to host this so that you could guarantee your customers that their data won't be lost, and the site will always be up so that they can always get to their data?

share|improve this question

migrated from stackoverflow.com Jun 11 '11 at 11:37

This question came from our site for professional and enthusiast programmers.

    
Please don't close this question. Flag it for moving it to programmers. Thanks. –  Richard DesLonde Jun 11 '11 at 9:06
    
Honestly I'd just get shared hosting from a reputable provider, perhaps one using cPanel. The app you described doesn't sound like it needs to worry about performance at all, at least not until after you have many many thousands of paying customers. The company I work for would charge you quite a bit extra for the backup system you would require, but we can provide it. –  Abhi Beckert Jun 13 '12 at 12:28

5 Answers 5

up vote 2 down vote accepted

I think the best way would be to use a service such as EC2 to store the data, but also make sure you host with a company that allows you to quickly add to your hosting, so should you need to add servers it wouldn't be an issue. Isolating data (to a service like EC2) ensures that even if your host goes down you can ensure data security.

As for always being up, this really comes down to your host being reliable and making sure they offer a powerful service - someone like Rackspace or Joyent would be my choice, but beyond that making sure you have efficient code - such as making sure you have as few DB queries as possible will make sure you don't have a massive server load.

share|improve this answer

Host it in "the cloud", for example using Microsoft Windows Azure, or Amazon EC2.

share|improve this answer

As a side note, I don't think you can guarantee the site will always be "up", even the biggest sites fail occasionally. I personally think the cloud is the way to go, but it's not without its failures (Amazon EC2 is perhaps the most famous downtime so far). See clouds down again for an idea.

share|improve this answer

A solution that is scalable would be best suited for your case.Among the top solutions are Amazon EC2.You should examine every aspect of your application i.e database servers,bandwidth,application server and get an accurate picture of the resources you are using.This will help you plan your budget on what exactly you need presently and if in the future when your users increase.

share|improve this answer

I find these answers that suggest EC2 (or other cloud solution) as an answer rather strange. Firstly, EC2 isn't a web-hosting environment. It will provide you with instances of virtual machines, from there you can build a platform to host your web application, e.g. install apache httpd or tomcat. This in itself will do nothing for resilience of your web application - you'd need to build a high-availability environment using multiple EC2 instances, including load balancers etc. as appropriate - this is not a simple deploy and forget scenario.

You really need to state what languages and frameworks you'll be using as this will affect how people answer your question.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.