April 7, 2008

Google Jumps Head First Into Web Services With Google App Engine

Michael Arrington

253 comments »

Our live coverage of the Google App Engine launch event is here (Update: we’ve built and launched a test application here).

Google isn’t just talking about hosting applications in the cloud any more. Tonight at 9pm PT they’re launching Google App Engine (Update: The site is live), an ambitious new project that offers a full-stack, hosted, automatically scalable web application platform. It consists of Python application servers, BigTable database access (anticipated here and here) and GFS data store services.

At first blush this is a full on competitor to the suite of web services offered by Amazon, including S3 (storage), EC2 (virtual servers) and SimpleDB (database).

Unlike Amazon Web Services’ loosely coupled architecture, which consists of several essentially independent services that can optionally be tied together by developers, Google’s architecture is more unified but less flexible. For example, it is possible with Amazon to use their storage service S3 independently of any other services, while with Google using their BigTable service will require writing and deploying a Python script to their app servers, one that creates a web-accessible interface to BigTable.

What this all means: Google App Engine is designed for developers who want to run their entire application stack, soup to nuts, on Google resources. Amazon, by contrast, offers more of an a la carte offering with which developers can pick and choose what resources they want to use.

Google Product Manager Tom Stocky described the new service to me in an interview today. Developers simply upload their Python code to Google, launch the application, and can monitor usage and other metrics via a multi-platform desktop application.

More details from Google:

Today we’re announcing a preview release of Google App Engine, an application-hosting tool that developers can use to build scalable web apps on top of Google’s infrastructure. The goal is to make it easier for web developers to build and scale applications, instead of focusing on system administration and maintenance.

Leveraging Google App Engine, developers can:

  • Write code once and deploy. Provisioning and configuring multiple machines for web serving and data storage can be expensive and time consuming. Google App Engine makes it easier to deploy web applications by dynamically providing computing resources as they are needed. Developers write the code, and Google App Engine takes care of the rest.
  • Absorb spikes in traffic. When a web app surges in popularity, the sudden increase in traffic can be overwhelming for applications of all sizes, from startups to large companies that find themselves rearchitecting their databases and entire systems several times a year. With automatic replication and load balancing, Google App Engine makes it easier to scale from one user to one million by taking advantage of Bigtable and other components of Google’s scalable infrastructure.
  • Easily integrate with other Google services. It’s unnecessary and inefficient for developers to write components like authentication and e-mail from scratch for each new application. Developers using Google App Engine can make use of built-in components and Google’s broader library of APIs that provide plug-and-play functionality for simple but important features.

Google App Engine: The Limitations

The service is launching in beta and has a number of limitations.

First, only the first 10,000 developers to sign up for the beta will be allowed to deploy applications.

The service is completely free during the beta period, but there are ceilings on usage. Applications cannot use more than 500 MB of total storage, 200 million megacycles/day CPU time, and 10 GB bandwidth (both ways) per day. We’re told this equates to about 5M pageviews/mo for the typical web app. After the beta period, those ceilings will be removed, but developers will need to pay for any overage. Google has not yet set pricing for the service.

One current limitation is a requirement that applications be written in Python, a popular scripting language for building modern web apps (Ruby and PHP are among others widely used). Google says that Python is just the first supported language, and that the entire infrastructure is designed to be language neutral. Google’s initial focus on Python makes sense because they use Python internally as their scripting language (and they hired Python creator Guido van Rossum in 2005).

Update: Here is Guido van Rossum at the launch event talking about App Engine:

  • Sphere It

Trackbacks/Pings (Trackback URL)

  1. Live From Google Campfire One
  2. Google unveils new Web Application Engine : The Blog Herald
  3. Wayne Pan
  4. Google File System: Much To Do About Nothing
  5. geek of all trades
  6. Kaiyzen - The Art of Continual Improvement » Web Computing: Google announces App Engine
  7. Google Releases BigTable, GFS Support - For Python « The Pursuit of a Life
  8. All about Microsoft mobile edition
  9. Google Engine: Competitor or knock-off? - mathewingram.com/work
  10. Google’s AppEngine - Application Hosting modeled on Django - Dave Naffziger’s Blog
  11. The Republic of Geektronica » Blog Archive » Google App Engine Announced: Like Amazon S3; Python-Only for Now
  12. Google to Compete with Amazon S3 Web Service
  13. www.teletubis.info » Blog Archive » Live From Google Campfire One
  14. Arctic Startup » Jaiku to be run on Google App Engine
  15. Googling Google mobile edition
  16. Keith Watanabe.net 2.0| Google Reads My Mind (Again)
  17. Random Etc. - Google’s App Engine
  18. SmashHum.com » Blog Archive » Google one step closer to owning the internet
  19. Google’s Campfire One: App Engine « developeranalytics [dA] | blog
  20. Google App Engine - så smart… · Mindpark
  21.   On The Net Daily - 4/08/2008 by eNaresh.com // Ramblings of a crazy person
  22. Juixe TechKnow » Google App Engine Analysis
  23. TechCrunch Labs: Our Experience Building And Launching App On Google App Engine
  24. Google Apps Engine | Khaducsti por Keko Ponte
  25. Google App Engine Preview Release « 你識咩啊你?
  26. Une grande nouvelle pour le monde python et django: “Google app engine” « Le blog de Patrick Vergain
  27. MogBlog » Google App Engine launched
  28. Google Jumps Head First Into Web Services | Simple Drops
  29. Lushable - Technology news, web 2.0 start up news » Blog Archive » Google App Engine Launches
  30. Business News Research » TechCrunch Labs: Our Experience Building And Launching An App On Google App Engine
  31. Google To Close HuddleChat
  32. www.teletubis.info » Blog Archive » Google Rips Down HuddleChat
  33. Open and Platforms « The Real McCrea
  34. Google App Engine - så smart… :: b[logg]Spot.se
  35. Google App Engine
  36. Why is everything Free* on the Web? *(or at least pretty cheap?) | TechAgility
  37. Ashutosh Nilkanth’s Blog » Deploy on Google’s Infrastructure
  38. Google and Amazon compete to be the lifeblood of startups | After Beta
  39. Does Google App Engine Rev Your Engine? - Regular Geek
  40. Savage Minds: Notes and Queries in Anthropology — A Group Blog » On Frictionless Scale-Making
  41. On Frictionless Scale-Making « Remixing Anthropology
  42. Has CMS become the New Elephant?
  43. google app engine: uygulama gelitiricilere destekliyor - Mobil Bileenler Topluluu
  44. Google appengine « mindginative
  45. I never knew » Blog Archive » Google App Engine
  46. Bits und so #85 (S-GOLD3) | Bits und so
  47. vrypan|net|weblog » Google App Engine
  48. Adobe News » Blog Archive » Google App Engine - Google Web Services
  49. aggrefeed.com » Blog Archive » Google Jumps Head First Into Web Services With Google App Engine
  50. The Google App Engine, Finally an Amazon competitor
  51. Devnews » Архив блога » Google открыл хостинг для веб-приложений
  52. APPOIL
  53. Google App Engine
  54. Brij’s One More Idea » Google App Engine - Black Swan in the data center
  55. CrunchBase Launches Voting Site Built on Google App Engine at CrunchBase Blog
  56. http://ensarm.blogspot.com/
  57. Amazon Web Services Rolls Out Red Carpet Support
  58. D.I.A Free News Online 2008 » Techcrunch: Amazon Web Services Rolls Out Red Carpet Support
  59. Afterthought » Blog Archive » The True Genius (and Danger) of Google AppEngine
  60. The New Yahoo: Sticky, Viral, And Most Of All, Friendly
  61. The New Yahoo: Sticky, Viral, And Most Of All, Friendly « Tecno Week
  62. A GPP Flex, Flash, And Technology Review And Tutorial Site. » Blog Archive » Google Jumps Into Web Services With Google App Engine
  63. Jarrett House North » Blog Archive » Google opens the Cloud

Comments

RSS feed for comments on this post.

  1. Hashim Warren

    wow - completely free. Very Googly!

  2. Noah Everett

    dang

  3. Noah Everett

    the Python only limitation is killer

  4. Bryan Woods

    I know a whole lot of people (myself included) who have been debating getting our hands dirty with Python. I guess now’s as good a time as any…

  5. Shannon Whitley

    Yet another language to learn, though? Sure we can do it, but what’s the percentage of Python programmers vs. other languages out there.

  6. Tom

    Not really impressed.

    What makes Amazon such a powerful concept is the flexibility. I can configure my own solution using my own platform and using my existing webhost (if I want to). What Google’s done is to essentially invent an inferior webhost.

    Its Geocities 2.0, now with Python!

  7. Guido

    For what kind of self-respecting developer is the requirement that they use python a “non-starter?”

  8. DaveS

    Python-only = FAIL!

  9. Shannon Whitley

    It’s a non-starter for a lot of folks who are already comfortably using S3. More about efficiency than self-respect, I’d say.

  10. reddknight

    As a current Django user I couldn’t be happier that they are using python. Would love to see a functional comparison.

  11. dan

    python as an option = cool

    pythin as the only option = strange restriction

    Other than not wanting to port their APIs to other languages, why would they limit to python, and not also support Ruby, PHP, and any scripting language.

  12. Gleb

    Sounds like hosting as it should be.
    However hosting 3d pary apps means support…
    Google support won’t be cheap meaning that the price could get too high to compete. Python usage makes it suitable only for projects that require hard Database usage as getting the software developers that can code on Python is much more expencive.

    So i think the project could be great for serious apps (if the price isn’t too high) but useless for 99% of websites.

  13. Geektronica

    @Guido (?)-
    For all the developers who have already written their apps, it’s not great news. If you’re starting from scratch, you can probably learn Python fairly quickly, but I’d think plenty of developers who would like to use this service have already written substantial amounts of code in other languages such as Rails.

    It’s not so much that anything is bad about Python as that locking developers - who are essentially looking for a beefy webhost - into one language is a bad idea.

    I’d be interested to see how this scales compared to something like MediaTemple’s GridServer.

  14. Wayne Pan

    Until I can use BigTable w/ my self hosted PHP app, it’s far from an AWS killer. Good start but they’ve still got a ways to go.

  15. matt

    That’s cool, they released a product that was released years ago by Amazon.

    good job

  16. David Stone

    @DaveS, I disagree. The low entry barrier level on PHP has caused most PHP developers to lack understanding, where-as I’m yet to meet a Python developer who isn’t insanely smart & with a high understanding of technical concepts.

    Sure, it’ll put some people off, but really if a developer is scared off by learning a new programming language should it solve the problem well I’d argue the developer isn’t much of a developer in the first place.

  17. Bryan Woods

    Funny how many people are passing judgments over its flexibility and scalability without using it…

  18. Geektronica

    Er, to clarify, I meant that I wonder at what point someone would outgrow MT’s GS product (or similar) and need the scalability of Google App Engine. I’m sure GAE scales farther than almost any other similar product, but I’d like to know for how many companies that’s relevant.

    @Gleb - Since when do webhosts support 3rd-party apps? The hosts I’ve worked with are good at killing borked processes from 3rd-party apps, but that’s about it.

  19. Bingo

    Didn’t you see where it said “python is the _first_ supported language”?
    They said they can support any language, and will add new ones later.

  20. Chris

    I have programmed in PHP, Python, C#, Java… by far the easiest to learn and most powerful is Python / flexible.

    Guido is right, if you are a serious developer the restriction to Python is a non-issue.

    Geektronica - if you already have written the app, then why would you use the Google App Engine? You have most likely already tried to solve the problems Google is assisting with.

  21. Matt

    yawn.

    way to be quick with the language, mike… nothing against you in the least.

    but as for Google.. yawn.

    @#11 Google releasing anything remotely close to supporting PHP would be like Duncan Riley saying something nice about America… it just aint gonna happen (see: Elitist).

  22. Frank

    A consideration that may be overlooked in some of the comments comparing Amazon and MT is the fact they are offering this for free to developers (up to ~5m pv/mo)..

    That, along with the full suite of service APIs (access/identity, etc) seems ideal for a “Startup Weekend” project to further reduce the barrier to entry while building once to scale.

  23. Henry Work

    Python just the first supporting language. Google says others will follow

  24. Chad Wathington

    I wish it were Ruby based. Python? I like the AWS agnostic approach..

  25. Auston

    I’m psyched on it. I just wish it came with a framework like django, then it’d be just like Heroku.

  26. gilltots

    does the google stuff use virtualization? i would like to see a head to head performance comparison, since one of the big AWS complaints is that the virtualization knocks about 30% off performance right out of the gate…and is this going to be one of those cheese-fest interfaces where you upload your code from a webpage and have to monitor it from a webpage? or do you get root? or how’s that work? anybody got any damn scoop around here?!?

  27. maya

    I guess it’s time to learn python

  28. Mark

    @ Henry: Exactly.. The point is the field they are starting to get into - whether it was python, php, or RoR, people would be upset if it didn’t include their language of choice. Who cares - any smart developer can deal with the tools they have at their disposal.

  29. Michael Bakovic

    As long as they add other languages, don’t feel like learning python lol.

    Please check out my blog for ways to make money online http://mikesmoneyclub.blogspot.com

  30. Martin

    I think most people are missing the point of the “PREVIEW RELEASE” tag. It’s an early release used to solicit feedback from a limited number of poeple, so there is no need to put in the extra work required to support more than Python.

    They will obviously support a multitude of languages when they launch this publicly (if anybody wants to bet me, I will happily take your money), much as any library supports a multitude of language bindings.

  31. Femmebot

    This is going to rock!

    Python only does kind of suck as a limitation, but it’s not that hard to learn.

    Personally, I think Python > PHP, especially in the readability department. Grow some bollocks, guys.

  32. 113.com

    Nice, really.

  33. mikeb

    From the way I understand it (I’m watchin a live feed) Google will have access to a COMPLETE SOURCE CODE of your application!

    When you thought that Python only was bad, things get really bad when your potential competitor has access to your source code as well!

  34. Michael Campbell

    On the surface, it does look like a competitor to Amazon’s S3 service. They both offer scalable infrastructure, database access and storage. The direct comparisons seem to end there. Google is offering more of a web interface to the software you develop, as opposed to Amazon’s storage buckets and desktop based apps.

    The Google App Engine seems quite proprietary in nature and only uses Python - at least at first - as the scripting language. S3 on the other hand has all sorts of third party apps out there, and it’s even integrated into some popular FTP software packages.

    Amazon S3 has the early lead, with many software titles available. Strange though, as it never felt like they got any real traction. In fact, few people I talk to have even heard of S3.

    Both Amazon’s S3 and Google’s App Engine will reduce system administration, maintenance, bandwidth and hosting costs. But if programmers embrace Google’s Python only playground while it’s still early in the game, the public’s on-going love affair with the big G, may let it zoom right past contestant number S3.

  35. Alex Iskold

    Python will be a deal breaker for many…

  36. Tim Trueman

    I find it interesting that Google is the one that opted for a tightly-coupled design, while Amazon choose loosely-coupled. Very cool!

  37. Daniel

    For early stage startups betting on being acquired by the GOOG developing on the Google stack from day 1 is at least one big step towards their dream. ;)

  38. Seventy One

    #6 @Tom, #15 @Matt: this is very different from what Amazon is providing, and there are markets for both.

    Amazon’s services make it possible for developers not to worry about physical provisioning and deployment of machines; provides raw compute power, storage, and bandwidth essentially on-demand, an improvement over more basic web hosting, at the expense of some loss of “flexibility” (you can’t choose your storage technology, choose AMD vs. Intel, etc.)

    As described, GAE is at an even higher level of abstraction, where developers focus on the business logic, with infrastructure/backend services like authentication, storage, and other Google services, already built-in and accessible within the Google network infrastructure via APIs. There is some additional loss of “flexibility” (can’t configure your own binaries) but the simplicity is a great productivity gain for many.

    Related, Michael’s note re. “Google App Engine is designed for developers who want to run their entire application stack, soup to nuts, on Google resources” can be easily misread—it’s not that the target developer pool want to run their entire app stack on Google per se. It’s that they want the simplicity.

  39. Geektronica

    @Chris - if you’re a small developer who’s written an app, scalable, hassle-free hosting is never a problem that’s completely solved when you run your own hardware. I thought GAE was targeted at people who need scalable app hosting; if so, making them use Python is a barrier for a lot of them, not because they can’t learn Python, but because they may not have been using it up to this point in their dev process.

    If it’s a temporary limitation, though, great. Exciting to see what comes next. But let’s remember that Gmail is still in beta.

  40. Evan Wired

    @33: Your tinfoil hat is too small.

  41. Remiss63

    P Y T H O N is only to begin with ! Other languages will also be supported ! Read to the end of the article !

  42. person2

    …. so, they already have your search, your email, your ads, your website metrics, your cookies etc - and now you’re being silly enough to let them have your source/project. I just can’t comprehend why? Because it’s Google and it’s free!? People, WTF!

  43. Evan Wired

    @42: Careful