The Changing Face of Web Hosting

Earlier this week, Google announced the preview release of Google App Engine, a service that lets you build and run web applictions (in Python only for now) on Google’s own server infrastructure. This latest move continues a trend away from self-managed hosting and extends it by offering a fully managed application environment.

First of all, let’s be courteous and set aside the fact that Google botched the launch of App Engine—first by tripping over its own quotas and then by succumbing to a rudimentary cross-site scripting attack. We’ll just assume the preview was rushed out the door before it was entirely ready. We’ll also overlook App Engine’s striking similarity to competitor AppJet.

Google App Engine joins the Amazon Elastic Compute Cloud (EC2) in providing instantly scalable hosting. In these uncertain times, it can be incredibly reassuring to build your site on a hosting service that will remain inexpensive if your business never takes off, but which can also keep up with a runaway hit without breaking a sweat.

Where App Engine beats EC2 is in friendiness for beginners. You can deploy a new application to App Engine with a single command. Google handles all the infrastructure details, so you don’t even have to think of things like load balancing and database backups.

App Engine’s downfall is lock-in. An application built for App Engine will only run on App Engine, while an application not built for App Engine will require major modifications to work within Google’s services.

Conversely, EC2′s strength is flexibility. EC2 lets you set up a cluster of virtual servers that behave just like dedicated, physical computers. You get to pick the operating system and software that runs on these servers, and you get to control the number of virtual servers that host your site at any given time. But all this set-up takes time, and no small amount of skill.

Clearly, the flexibility offered by EC2 that makes it perfect for hosting established applications with significant infrastructure needs also presents a barrier to entry for beginners who are just getting started. But the openness of the EC2 platform means that this barrier is simply an opportunity for people to build (and potentially sell) ladders:

  • Scalr is a recently-launched open source project that automates the management of EC2 clusters. While still in its early stages, it already does everything the custom-built system that we had to write for SitePoint’s EC2-hosted applications does.

  • Heroku is a browser-based development environment for building Ruby on Rails applications. Edit the code of your application right in your browser, then click one button to deploy the application to EC2 automatically! All the details are managed for you.

The inevitable next step is for someone to implement the services provided by Google App Engine on the Amazon EC2 platform. Bring the strengths of these two competitors together, and things will really get interesting!

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • friarminor

    Both Scalr and Heroku provide their own values but count Morphexchange in the list of ‘Ladders’on the way up the EC2 platform and a finely-tuned one at that. Do check ‘em out.

    Best.
    alain

  • Abinasha Karana

    We have a production site running in EC2 instance. We manage these clusters and the availability of the application..

    http://sunilabinash.vox.com/library/post/the-ec2-backup-and-servicing—data-and-content.html

    In each 30 minutes all mysql tables are backed up to S3 incrementally ontaining all data of that day only. In the end of the day, the whole database gets backed up at S3 All contents get backed up at the end of the day. Intermediately the infromation is replicated from a single update mysql node to all other read only nodes instantly. The content is written straight to S3 using hadoop infrastructure.