Slashdot Mirror


Google Previews App Engine

An anonymous reader writes "Google is giving a handful of web programmers the opportunity to create and run their own Web applications on their servers. Today's launch of a preview release of Google App Engine signals a new era of collaboration with third-party software developers. 'The goal is to make it easy to get started with a new Web app, and then make it easy to scale when that app reaches the point where it's receiving significant traffic and has millions of users," said Google product manager, Paul McDonald in a blog post."

6 of 167 comments (clear)

  1. Obligatory by buruonbrails · · Score: 4, Insightful

    I for one welcome our new Google Cloud Computing overlords!

    Jokes aside, if done right, this thing can bring Google to the position of total control over a large part of the Internet, which is a bit scary, to say it mildly..

  2. Why? by Chineseyes · · Score: 4, Insightful

    As a software developer and business owner why would I want to leave myself at the mercy of Google like this by being tied to their service?

    --
    I think the invisible hand of the market has its middle finger extended

    --A wise old fart named SC0RN
    1. Re:Why? by IamTheRealMike · · Score: 5, Insightful

      So let me get this straight.. I leave myself at the mercy of google in order to save the cost of IT administration? That doesn't sound like a good business decision.

      The point about App Engine is that it's based on Google technologies like BigTable and GFS (along with a bunch of others that I can't talk about, but are equally cool). The real saving is not on IT administration but on the enormous pain of scaling up your infrastructure as the site grows.

      The IT industry is littered with companies that failed the scaling challenge and lost their advantage. Friendster is the canonical example. You really don't want to build a successful business and then see it fall over and die because you aren't equal to the challenge of resharding your MySQL databases every month.

      But wait. There are other advantages. App Engine is really a platform for Google to expose its technology to others. Scalable databases is only one part of it. There are plenty of other advantages to running on top of the Google platform. I haven't had a chance to check out the videos yet, so I'd rather not shoot my mouth off, but seriously - the stuff we have here simplifies a *lot* of annoying goop that otherwise you'd have to handle yourself (managing datacenters being only one obvious example).

      Having seen for myself what it takes to run a large, popular website at a high degree of availability, I'm pretty excited about the launch of this service (disclaimer: I work for Google but not on App Engine). It means people can spend more time writing interesting software and less time on crap like debugging database replication and figuring out the annoying parts of how to geocode Japanese street addresses - cuz we do it for you.

  3. Re:Very Different from EC2 by maxume · · Score: 4, Insightful

    Sort of. Apparently, you can stay pretty close to Django:

    http://simonwillison.net/2008/Apr/8/forms/

    I would imagine that someone will also write some code to sit between your app and database, pretending to be the data backend that Google is providing, simplifying migration away from teh Goog.

    --
    Nerd rage is the funniest rage.
  4. The future by pubjames · · Score: 5, Insightful

    I think this move is being mis-characterized by a lot of people. I actually think this is a very clever move by Google, and a taste of the future.

    One of the key ways Microsoft won the desktop OS wars was basically making it easy for developers to create applications for it. Google has realised that the focus for application development is moving from the desktop to the web. If they can create a system that makes it easy for developers to create web based applications, then developers are going to integrate what they develop with Google services, effectively giving Google the kind of lock-in that Microsoft had with the web.

    I don't know why people keep comparing this to Amazon's EC2. This I think is very different, both technically and strategically, and it is all about providing online developers with a rich way to incorporate Google services into their applications.

  5. Re:Looks good and free (for 500MB worth) by sentientbrendan · · Score: 4, Insightful

    >It's actually nothing like EC2--EC2 is a virtualization platform.
    >You run an entire machine image of your choice on Amazon's infrastructure,
    >and there's no explicit persistent storage except through the Ec2 interface.

    It is geared towards solving some of the same problems as EC2 and S3 (how to deploy scalable web sites without having to build and maintain your own datacenters); however, it takes a different approach.

    EC2 and S3 make you design your web stack from the ground up, choose your operating system, etc. They also let you run whatever kind of task you want, including stuff that runs in the background.

    In contrast google app store limits your options, and provides it's own web framework, but is probably easy to get started with since they already handle things like load balancing for you, and starts your service up on a new machine if one crashes automatically, etc.

    A lot of people have noted that you have to use python to develop, and that is one way that it lacks the flexibility of amazon's offering, but it is by far the least important! Google will doubtless add support for things like java and ruby in the future, as for them it is just an issue or wrapping an API.

    The biggest concern that most people are missing is that this is a essentially a really big web server that they are letting you put your software on, and *just* a web server. From "http://code.google.com/appengine/docs/whatisgoogleappengine.html":

    "when an application is called to serve a web request, it must issue a response within a few seconds. If the application takes too long, the process is terminated and the server returns an error code to the user."

    That means you can perform *no* computationally expensive operations on their service. Most interesting web applications don't just process web requests, they use data that has complicated processing done as part of batch tasks. Internet search is the best example of this. It's not enough to have a database with the whole internet in it, you also need to generate an index, and that is an incredibly expensive batch job that must run on an enourmous cluster. That means if you wanted to implement something big like search on google app engine, you would need to roll your own cluster and then upload your stuff to google, *over the internet*. This is not practical because the terabytes of data involved may be quick to transfer across a lan in a data center, it will take a long time to transfer them across the internet...

    In comparison, amazon will let you use the same service and data store both for interactive web applications, and backend batch processes. You could theoretically reimplement google search on top of EC2 and S3, but probably not on top of google app engine.

    That said, I think that google is going to kick everyone's ass in this space in the long run. Google hasn't come out with every feature necessary for building big apps without having to worry about scaling, but for the features they have implemented, they've done it right, making it much smoother for the developer by handling administrative tasks. In comparison amazon's efforts give you all of the primitive tools you need, but then require you to roll a lot more of your own code.

    When they get around to letting external developers run mapreduces (http://labs.google.com/papers/mapreduce.html) and similar long term distributed tasks by paying for CPU usage, they will have the opportunity to move into this space in a big way.

    Aside from that, they need to provide better tools to migrate existing web apps to their service. Most people aren't going to write something serious for google from scratch, but might be willing to port an existing app that is facing scaling issues to explore cost/benefits of google's service. Right now, porting is much easier with EC2 since you can just image your existing servers and build on that.

    Google needs to provide:
    1. Some kind of language independence. Right now, it sounds like (although I do not kn