Around the Campfire with Google App Engine - GAE vs. AWS
(Page 3 of 4 )
The main difference between Google App Engine and Amazon Web Services is that Amazon consists of several independent services that can be tied together at the developer's behest. In consonance with what App Engine's main features were, Amazon offers three important services that will be Google's main competition: Elastic Compute Cloud (EC2), Simple Storage Service (S3) and SimpleDB. They also offer a queuing service, a payment service, and a fulfillment service among others. It is much more generalized and language/platform neutral than Google.
S3 is an online storage service with unlimited capacity. It can be used for web hosting, image hosting, as a back up system, etc., making it the counterpart to Google's BigTable storage system. The major difference is that S3 can be used independently, while BigTable requires a Python script that creates a web-accessible interface to BigTable.
EC2 provides scalable virtual private servers. Users can create, launch, and terminate server instances when they want. The servers are able to host a Linux binary image that can include "any kind of program" written in any language available on Linux. This does offer a lot of flexibility, but if your program somehow goes into an infinite loop, Amazon will let it burn costly CPU hours, since it has no way of knowing whether this is intentional or not. In comparison, App Engine forces you to run "halting" web applications that fit their computing model. In other words, they should be able to complete an HTTP request with a response and stop. But despite these limitations, under this model, Google can more readily guarantee the availability of your application, whereas Amazon cannot.
SimpleDB works in conjunction with EC2 and S3 to offer the functionality of a database; it lets developers run queries on structured data. As you can see, these services are not entirely independent, but they do give you a few more options in terms of the resources you might want to use. Think of Amazon Web Services as a buffet where you get to create your own meal and Google App Engine as a meal you order off of a menu.
However, Google is banking on the fact that a platform geared exclusively for web applications will be more useful for developers because it offers the best services needed to make an application run. After all, Google does have nearly unlimited processing power and storage capacity thanks to over one million servers. It allows the developer to completely focus on coding and not worry about things like buying hardware or scaling code. The benefits definitely seem to outweigh the drawbacks, at least the ones they're telling us about.
In the next section, I'll be going over some of the hidden costs of using Google App Engine. Perhaps you'll see something you haven't thought of yet. There's only one way to find out: keep reading!
More Web Hosting News Articles
More By Michael Lowry