Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Pros & Cons of Google App Engine [closed]

People also ask

What pros mean?

adverb. in favor of a proposition, opinion, etc. noun, plural pros. a proponent of an issue; a person who upholds the affirmative in a debate. an argument, consideration, vote, etc., for something.

What pros and cons mean?

Definition of pros and cons 1 : arguments for and against —often + of Congress weighed the pros and cons of the new tax plan. 2 : good points and bad points Each technology has its pros and cons.

Are pros advantages?

The pros and cons of something are its advantages and disadvantages, which you consider carefully so that you can make a sensible decision.

What do pros hold INC?

PROS Holdings, Inc. operates as a holding company. The Company, through its subsidiaries, develops and markets business computer software. PROS Holdings provides price optimization, sales improvement, opportunity detection, and revenue management software.


Pros:

  • Scalable
  • Easy and cheaper (in short term).
  • Nice option for start-ups/individuals.
  • Suitable for apps that just store and retrieve data.

Cons:

  • Not suitable for CPU intensive calculations. They are slower and expensive.
  • Scalability doesn't matter much cuz if an app works at Google scale then probably it makes enough money to run on its own servers.
  • They have lots of limitations thrown here and there, as a result deep data analysis is difficult. Like you cannot produce a social graph using GAE.

I would say its not meant for serious businesses and expensive in long run.


(A huge new) PRO: GAE now supports MySQL : https://developers.google.com/cloud-sql/


Pros:

  • built-in ui for unified logs

  • built-in web interface for task queues

  • built-in indexes on list of primary objects.

Cons:

  • loose logs very fast

  • VERY expensive

  • VERY expensive

  • VERY expensive

  • Un-hackable. Scales because you're obligated to code in a way that scales.

  • Longer development cycles. Sometimes you just want to hack something together and throw it away after 5 hors. With appengine you have to proper code it and write a lot of stuff to make it sure it scales. You can't just do a "find . | grep .avi | xargs ffmpeg -compress ...." :)

  • You will loose hours trying to do the simplest tasks like sending push notifications to APNS (iPhone). Although it's fine if you only want to support android in the future.

  • Terrible to make cleanups on the database. It's a HUGE pain in the ass to fix rows in the database, mainly because terribly slow, but it also requires a lot of code to loop properly within it's time constraints.

  • It was a pain to port Lucene to work on it's "filesystem".

  • Slow for what you pay.

  • Even MORE expensive if your app has spikes of traffic. My app has those spikes if a user that has many followers makes an action and we have to push notifications to his followers. Because of that I have to keep 10 inactive servers always on ($$$$$) to handle spikes.

Appengine isn't too bad due to the fact that I have the option to burn $$$$ instead of being concerned about scalability and fixing bottlenecks to reduce server usage. Sometimes it worth it.

My advice to people starting new products is to go with hetzner.de which is where I host my other products servers. It's cheap and extremely hackable. I have one server at hetzner that is handling 3x more traffic than the product that I have on appengine. The difference in price is $100 a month versions $2700 a month!

I have system admin experience, so the bottom line is that I would never choose appengine over having my own ROOT server. Don't be that bored software engineer wanting to experiment new things instead of building great products!


Pro: Unlimited scalabity to your application and scales with demand.


Con: Not available in some countries (Argentina).

Edit

Available worldwide, but only through Google Groups for App Engine.


When assessing pros and cons, I think it is important to clarify the market for which one is representing. Developers looking for a cost-effective solution to help them with the steep part of their planned hockey-stick growth curve will weigh heavily the cons already listed. For a small business owner, however, GAE is a God-send. These folks most often are looking to "the cloud" as a means to more effectively run their business (i.e. sell physical product and services). For the SMB, GAE the pros already listed can be much more valuable compared to the hockey-stick seeking dev, whilst the cons weight in at a fraction of the devs' measure. I don't see the GAE team doing anything related to SMB positioning, so I guess answers like this are me just pulling on Superman's cape, and spitting into the wind. Really GAE should be absolutely ruling the SMB space now. If not (I have no insights re: user base), then its is a greatly lamentable failure.