Monday, March 2, 2009

The Google App Engine Hoax

I heard about Google releasing the paid quotas on App Engine the other day, and just got around to reading the details. I was horrified - HORRIFIED. App Engine is the biggest hoax ever perpetrated on unsuspecting developers.

For months now, I have been writing App Engine applications, waiting for the scalability that Google has been promising. The quotas up until now have been painful to deal with, but hope was right around the corner - right? When the paid quotas are released, I'll be able to pay for what I need - right? Wrong. Read the maximum request quota - 500 request per second. Is Google fucking joking? I can get better throughput on my laptop. Here is the "Automatic Scalability" paragraph straight from Google:

"For the the first time your applications can take advantage of the same scalable technologies that Google applications are built on, things like BigTable and GFS. Automatic scaling is built in with App Engine, all you have to do write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs."

Note to Google - remove this paragraph. It's a stinking lie. You have been misleading developers for months, leading us to believe that App Engine was the way to go, that all our scalability problems were solved. You're a bunch of fucking liars. 500 requests per second? That's "scaling is built in"? Ha, ha, ha, ha, ha, ha, ha, ha!!!!!!

Azure here I come.

12 comments:

timf said...

http://code.google.com/support/bin/request.py?contact_type=AppEngineCPURequest

utility73 said...

what laptop do you have? :-)

Jeswin said...

I checked out Azure, it is way more capable than AppEngine. And I agree that AppEngine as it stands now is a joke - a biggest limitation for me being that you can't even run background processes. Azure lets you run background processes forever (work-sleep-loop), but still no cron jobs.

Adam said...

I think they mean 500 requests per second * 60(secs) * 60(mins) * 24 which is 43.2 million requests a day.

Anonymous said...

@anteatersa

That means nothing. People want burst scalability to know that their users won't have to put up with unacceptable load times, and that the app can handle the load. A single Apache server with a typical PHP/MySQL app can serve 200-300 req/sec (unless you're using a framework). 500 req/sec is pitiful for a "scalable" solution...I'm getting more out of two EC2 instances right now.

Unknown said...

We've scaled Drupal to 3000 requests per second. As an example. And we are much cheaper than App Engine or EC2. Joyent.com.

Unknown said...

you forgot to post this one:
http://code.google.com/appengine/docs/quotas.html
"The total number of requests to the app. The per-minute quotas for application with billing enabled allow for up to 500 requests per second--more than one billion requests per month. If your application requires even higher quotas than the "billing-enabled" values listed below, you can request an increase in these limits here http://code.google.com/support/bin/request.py?contact_type=AppEngineCPURequest"

so they are not saying you can not do it, it just won't happen automatically is all.

Unknown said...

First off, I'm curious as to the specs of the disks on your laptop. To be able to sustain 500 requests per second, you must have a decent set of striped scsi disks attached. Or are you serving from a memory only database?

Secondly, how do you geographically distribute your laptop?

PS: On Azure, I do hope they've gotten past running on a single server. That was kind of sad in the demo.

freshtonic said...

This is nothing more than a soft limit. If you contact the AppEngine team you can get that soft limit extended. The same thing happens with EC2 (I found out the hard way). EC2 has a soft limit of 20 instances. Again, contacting them for an increase in the limit did the trick.

Essentially what it all boils down to is this: if you are continually pushing more than 500req/sec, you are getting into 'real money' territory and Google (or EC2) want to be convinced that you can afford the bill.

JJX said...

For all those saying that "all I need to do is ask (beg) Google for more quota, read this:

http://www.reddit.com/r/programming/comments/81f1k/the_google_app_engine_hoax

timf said...

Seems like the person is talking about not getting a special free quota he had and that he was in negotiations for (but had not heard back yet)?

That seems like a completely different situation to me than a paying customer who wants to increase their quota.

Note that this translates to "give Google more money" so I don't know why you think this is something like begging.

On EC2, they also want to make money and they happily increase quotas. They just want to know what's up, if you're a legitimate customer who's really going to pay them and not do a chargeback on the credit card the first month, etc.

JJX said...

The person who got his quota removed has to renegotiate with Google to get his quota back. Read their term of service. They explicitly state that they can turn off your access with 90 days notice.