Live data from Hacker News

Goodbye, Google App Engine

carlosble.com

21–30 of 102 posts

Re: Goodbye, Google App Engine

#22
post #11

the next version will allow you to pay to keep three copies of your app loaded and ready to go at all times. that should eliminate the insanely slow load times for apps that don't get constant traffic (at a price yet to be determined). google is also adding sql database capabilities to the platform soon. and google apps for business will eventually let you talk https on your own domain (at a price yet to be determine…

Do you have any references to the claims about GAE offering sql databases support? Is it something that you predict or is it something they made a commitment to?

It is available in "App Engine for Business" which is currently in preview. http://code.google.com/appengine/business/

Re: Goodbye, Google App Engine

#23

I just launched my app 4 days ago (threewiki.com) and its backend is using GAE (Python + Tornado). On the second day, it was featured on TheNextWeb front page and the server got TONS of traffic. It scared me a bit, and I quickly change the daily max quota to $10. Anyways, GAE handles everything very gracefully. Over 70% of our users use either Facebook or Twitter to login and it hasn't been a problem at all. I always…

threewiki.com is very tastefully done - good job!

Re: Goodbye, Google App Engine

#24
While I feel the OP's pain in terms of difficulty working with the limitations of AppEngine, what he's not mentioning is the collection of benefits you get from AppEngine over other services. We've found that once you work out a solution to the datastore and request timeout issues, you have a remarkably robust and scalable system for free (or at least out-of-the-box).

With AppEngine, I've never had to migrate a database schema, build a load-balancer, hire a fulltime sysadmin, or even pay for servers that arn't receiving traffic. I don't have to set up a large-scale deployment system, nor spin up a new database server when traffic gets too heavy. AppEngine so far has been remarkably cheap (we're starting to bring in more customers however, so we'll see how long this lasts).

Many of the challenges he mentions come down to thinking about writing a webapp with a longer-term vision in mind. Datastore limitations crop up when you outgrow your first datastore in a standard system; in AppEngine they're properly enumerated and dealt with from day 1. Likewise long-running connections become very tricky to deal with with lots of traffic... this point is a little harder to argue with the recent popularity of asynchronous-io servers, but I think Google is working hard on these limitations. SSL is just annoying; we've had to deal with this by adding an SSL proxy until Google adds SSL support -- but it sounds like Google is pretty close to solving this one (it's been promised by end of year).

Also, AppEngine is written in a very high-level way; should you reach a point where AppEngine no longer makes sense, it is amazingly easy to transition over to another system (as the OP apparently found out; I would give more credit to the design patterns inherent in the AppEngine APIs than 'TDD driven development'). Tornado, webpy, etc have virtually the same interface as AppEngine's webapp framework.

There are definitely tradeoffs when choosing AppEngine as a production backend right now, and its certainly not the right solution for every problem... but for many people, us included, its been a pretty large net benefit for our startup. Google is actively improving the system, and I expect many of these problems will go away in the next 6 months or so.

Re: Goodbye, Google App Engine

#25
I recently developed my first GAE site, and whilst I didn't run into the problems the author of this article did, I spent a lot of time hunting down best practises.

It's now been ages since I last looked at Amazon's offerings; does anything have any links to best practises / development strategies for either AWS or GAE?

Re: Goodbye, Google App Engine

#26
never used or considered to use GAE, but as web developer i'm following it since it emerged. i was really happy to read this article, GAE for me never was really appealing, the general feeling was it just can't give you the dynamic you need for developing really heavy web applications.

i'm sure it's much more suited for scaling, but before you scale your web application, you should have a good solid web application, and how can you have one if you're limited? in db, requests, debugging, auth, fs, etc...

if anyone looking for a great framework to develop his application, i recommend check http://kohanaframework.org/

Re: Goodbye, Google App Engine

#27
We have a product built on app engine, sure we've had our share of challenges but the benefits far outweigh them. To name a few benefits: A developer staff of 1 can focus on the application code and not the infrastructure details. Fast image serving auto-scales all your images to any size, and serves them off the fast servers used by Picasa. Versions can be used for testing multiple branches of code on production servers seamlessly.

#1 Has never been an issue for us #3 Is incorrect with the new task queue upgrades #6 We have a full-text system working just fine #7 Is a benefit when working with a distributed datastore #8 DB performance after the recent updates has been stunning #10 So they badly designed their queries and blame app engine? #11 Is flat out incorrect #12 What database is immune to failure? Would love to know

App Engine doesn't do everything, and no one is claiming it does. We have a secondary VPS we offload certain image processing tasks for example. But what it does do is extremely powerful from a develop perspective, and the application-centric model, like heroku or engine yard, is where things are headed. I would much rather leave the server and scaling issues to the experts so I can spend time improving my application.

Re: Goodbye, Google App Engine

#30
post #8

It sounds like a lot of his problems stem from the use of Django. I've tried it before, and believe me, Django absolutely sucks on Appengine. First off, you have a full featured framework which was designed for SQL relational databases. Many of Django's features either have to be given up, or are monkey-patched beyond belief to get partial functionality. Not to mention quite a few Django apps use database features wh…

I've been using Django on GAE for a while now and it's working pretty well.

There's a port called django-nonrel, which is specifically designed to work on nonrelational databases. So yes, you can't do fancy joins and stuff, but hey, most of the time you can work around that; but it's still great to be using the ORM just as you are used to it in 90% of the cases.

Although I do agree with the OP that all the rules GAE imposes can be a pain in the arse a lot of the time I really really love them. It pushes me to design my application well and to make it able to handle the load I'm expecting to be handling in a foreseeable future. If I didn't scaling even up to a few thousand users could get dicey.

Post reply on HN