Tuesday 17 May 2016

What are the advantages and disadvantages of Google App Engine against Amazon EC2 or Microsoft Azure?

The advantages of App Engines are fairly well known. Some of them include seamless scalability, simple APIs to backend datastores, mail auth and asynch task queues. However, if you try to build anything substantial on top of App Engine, you are bound to run into a few operational pitfalls as well. Azure Application Development Services offers many features but GAP is no more less. Both of have has their own pros and cons.


Google App Engine VS Microsoft Azure


Advantages of GAE

  1. The main advantage of GAE is it doesn’t scale. However, even after you empower billing, the whole system is augmented to support only 500 requests per second. If you want more, you can reach Google’s disposal to increase your thresholds, so you can have millions of users, but more than 500 requests per second. If you want to do more than 500 requests and your app is legit, they will remove those caps or make them higher.
  2. GAE feature set is good enough to build a decent website and you don’t need to do the maintenance work.
  3. It doesn’t require any server administration. It has free usage quotas and provides scalability. GAE has better access to Google user accounts and deployment process is very easy.
  4. GAE has the highest admin load. Once you are set up, deploying and re-deploying is quick and they will auto-everything. For example, you don’t have to worry about the number of servers your app is using, how to share the data and how to load-balance.
  5. You can get any feature from the store with GAE. But with Azure, you get the feeling of SQL Azure database but at the same time it would be too expensive. Azure storage is likely to have more gotchas. No relational integrity, no order-by, you will scam with the in-memory setting more. GAE’s store has far rarer margins and more features than Azure tables.

Disadvantages of GAE

  1. GAE is yet not stable enough. Even Google says that GAE is the same infrastructure of Google self-internal project. And the budget would increase much when your website becomes bulky.
  2. Without native file system read/write access, it is hard to process some data transform with existing library, and it doesn’t support some native file system base library as well.
  3. It does not provide full text search API. Also, the SDK/Java is unfavorable with Maven, it is unsatisfactory to accomplish lots of external libraries. The SDK/Java depth rest on on IDE, and the default project directory structure is some difference with normal web app.
  4. It is not easy to process unit test. It cannot fix the root cause and does not support add SSL to web site. The GAE may be the development for future web application, but it is not equipped for building a modern web site now.
  5. It suffers from the inability to tweak server software. The Filesystem and many standard library modules are inaccessible. Only Python and a few runs of Java Virtual machine.

GAE has great UI that includes a record viewer and a data editor. With Azure, you have to catch external viewers/editors for this. Also, GAE lets you have several sorts of your application running on the same data store. You can deploy, test a variety and then set the current ‘live’ version when you are prepared. You can change back anytime if something goes wrong.
 

No comments:

Post a Comment