As someone who's considering whether going w/GAE or custom, the points he makes are totally valid and applicable.
Goodbye, Google App Engine
51–60 of 102 posts
Re: Goodbye, Google App Engine
#52I'm almost sure, that i can run the same amount of traffic from $100/month dedicated server.
Re: Goodbye, Google App Engine
#53A few of these points are just ridiculous: 1) If you want "SQL and Joins", use SQL. This is like complaining that you can't play Halo on Linux. 1A) There isn't full text search. If you need full text search, use a system with full text search as a feature. 2) Some of the points are out of date (or will be out of date soon). The 30 second limit for cron jobs will be 10 minutes after the next release. As noted, the 100…
I've gotten full text search working using techniques similar to those described here: http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-A...
The problem we ran into with the merge join functionality was the following:
Let's say you're searching for "lcd monitor", your code could do a search for lcd and monitor then merge the result (select * from ngrams where ngram in ['lcd', 'monitor']). There are many lcd monitors so the merge join will find 1000 results very quickly.
Let's say you search for "dell monitor". Unlike the previous search, there aren't many dell monitors but there are lots of dell products and lots of monitors. Your merge join will timeout because there isn't enough time to perform a query for dell and another for monitor then merge the results because of the internal merge-join limitations.
Also, it was VERY expensive to index every document (our data is in a constant flux) so we decided to use a different solution.
Re: Goodbye, Google App Engine
#54A useful article for people to read before using AppEngine. I only use AppEngine for my own projects, so far no jobs for customers. I was aware of most of the limitations of AppEngine that the author of the article mentions after just a few hours of experimenting with AppEngine. Now, AppEngine now no longer gives me many problems. I think the lesson is to do a lot of experiments before committing to technologies. I d…
Can definitely advocate Objectify. It's much nicer to work with and if you're working with Google Web Toolkit it is also GWT-serializable, so you can use the same objects in your DAOs and GWT UI.
At this point, I think using JDO on App Engine only makes sense if you're porting an existing JDO application to App Engine.
If you're starting from scratch, Objectify is the way to go.
Re: Goodbye, Google App Engine
#55The biggest problem for me with GAE is cost. Currently I'm paying around $150 per week for around 50k daily active users (~6 million requests per day). I'm almost sure, that i can run the same amount of traffic from $100/month dedicated server.
If you're small, GAE is free, but then, you could host anywhere for peanuts - just buy a linode or a small EC2 instance, it doesn't really matter.
Once your site becomes big, cost is going to matter and GAE is as expensive as anyone else, last time I looked, quite a bit more expensive.
So there is really not much advantage, it is only free when it doesn't matter, and when it does you're going to start looking for the exit pretty quickly, not just because of cost but because GAE imposes all kinds of limits which may make dealing with your problems much much harder.
Re: Goodbye, Google App Engine
#56We love AppEngine for many of the reasons which he gives. Because of its limitations, the platform makes you think and write code with proper design patterns in mind. If you just start to write code without thinking about it beforehand, yes you won't like AppEngine and it's not for you. It'll cost you LOTS of money and won't perform very well. On the other hand, by writing code designed for AppEngine we've been able…
Certainly ironic for a Google platform to be so bad at search.
Re: Goodbye, Google App Engine
#57It 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…
Re: Goodbye, Google App Engine
#58if you're using Django, check out http://www.djangy.com -- it's heroku for django (and eventually other wsgi frameworks) :-)
Any plans to do a RailsTutorial-esque Py/Dj/Git/Djangy tutorial (as opposed to Rb/Rls/Git/Heroku)?
Re: Goodbye, Google App Engine
#59i originally also considered gae for my project, but decided against it, my impetus was that i wanted to use a homegrown best of breed stack: tornado, mysql, nginx, memcached, python2.7 and have more control over the environment.
Re: Goodbye, Google App Engine
#60Earlier quoted context omitted.
I've gotten full text search working using techniques similar to those described here: http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-A...
This type of full-text search works on a small dataset or a dataset which doesn't have a wide variety of data. It uses the internal merge-join functionality of AppEngine, which as the name suggests takes two queries and joins them together. Problem is the the merge join has a very small time limit. I forget the exact timeout (it's undocumented), but it's something 500 milliseconds. The problem we ran into with the me…