Dear MyTech,
Anshuman (anshuman.mbait@gmail.com) wants you to read
the following article with the comment "Must Read".
Google App Engine vs. Amazon Web Services: The Developer Challenges
March 28, 2010
This article can be found online at the following location:
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
Sure, cloud computing platforms free developers from scalability and deployment issues, allowing them to spend more time actually writing web applications and services. But when choosing between two prominent platforms, Google App Engine and Amazon Web Services (AWS), which platform is The choice can be simple if you fall into one of the following two scenarios:
If your application can be architected to run within the limited Google App Engine runtime environment, then take advantage of Google's lower hosting costs.
If you need a more flexible cloud deployment platform, then AWS is a good fit for your needs.
Of course, you need to consider more issues than these when making a choice. In my development work, I've had the opportunity to use both and I can tell you that they require very different architecture decisions and present different sets of challenges. In this article, I will discuss some of the main challenges in more detail.
I assume you have a good understanding of Google App Engine and AWS. If not, read my previous articles "http://www.developer.com/features/article.php/3872151/Google-App-Engine-What-Is-It-Good-For.htm"Google App Engine: What Is It Good For?href="http://www.developer.com/features/article.php/3872986/Amazon-Web-Services-A-Developer-Primer.htm">Amazon Web Services: A Developer Primer
Google App Engine Challenges
Because Google App Engine is designed to scale your web applications -- adding server instances as needed -- some HTTP requests may require loading a server instance before the request can be satisfied. Google refers to these as "loading requests." The time required for loading requests varies, based on lots of comments on Google App Engine discussion groups and message boards. The smallest loading request times are reported for Python + DJango web applications (usually much less than a second). Java loading times are much longer, but they are still often less than a second. Google is implementing pre-loading options for Java that will improve the load time performance in the future.
Loading time for new virtual instances is a problem for other JVM languages, often requiring many seconds for JRuby and Clojure. Loading times for Scala are close to that for plain Java because compiled Scala class files are essentially indistinguishable from compile Java code. The difference is caused by code generated to support dynamic languages like JRuby and Clojure on the JVM. For applications running on dedicated servers, this extra load time is not a problem but it does affect applications hosted on Google App Engine. While I have experimented with JRuby and Clojure web applications on Google App Engine, at this time I would choose Python, Java, or Scala for production use.
The bottom line is using Google App Engine will be more restrictive than the development and deployment environments that you are used to. The datastore is more difficult to use than a relational database (which for example has global transactions, joins on tables, and a subset of the types of queries that you can do with a relational database). Not being able to start and manage long-running processes also makes some kinds of applications difficult to write.
** This article contains an HTML table showing information
** we cannot display properly in this email.
** To view the full article with table, visit
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
*** This article contains an HTML image showing comparative data.
*** To view the image, visit:
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
This message was sent to you by Anshuman -- if it was sent to you in
error, we apologize for the inconvenience. If you feel we should look
into why this happened, please visit http://www.jupitermedia.com/feedback.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Advertising: If you are interested in advertising in our newsletters,
call Claudia at 1-203-662-2863 or send email to
mailto:nsladsales@internet.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For details on becoming a Commerce Partner, contact David Arganbright on
1-203-662-2858 or visit http://www.jupitermedia.com/corporate/licensingform.html for the contact form
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To learn about other free newsletters offered by Jupitermedia or to
change your subscription visit http://e-newsletters.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
internet.com's network of more than 160 Web sites is organized into 12
channels: Developer http://internet.com/webdev/ Download
http://internet.com/downloads/ International
http://internet.com/international/ Internet Lists
http://internet.com/lists/ Internet News http://internet.com/news/
Internet Resources http://internet.com/resources/ IT
http://internet.com/it/ Small Business http://internet.com/sb/
Linux/Open Source http://internet.com/linux/ Windows Technology
http://internet.com/win/ Wireless Internet
http://internet.com/wireless/ xSP Resources http://internet.com/xsp/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To find an answer - http://search.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Looking for a job? Filling an opening? - http://jobs.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This newsletter is published by Jupitermedia Corporation
Copyright (c) 2004 Jupitermedia Corporation. All rights reserved.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For information on reprinting or linking to Jupitermedia content:
http://www.jupitermedia.com/corporate/permissionform.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.
Anshuman (anshuman.mbait@gmail.com) wants you to read
the following article with the comment "Must Read".
Google App Engine vs. Amazon Web Services: The Developer Challenges
March 28, 2010
This article can be found online at the following location:
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
Sure, cloud computing platforms free developers from scalability and deployment issues, allowing them to spend more time actually writing web applications and services. But when choosing between two prominent platforms, Google App Engine and Amazon Web Services (AWS), which platform is The choice can be simple if you fall into one of the following two scenarios:
If your application can be architected to run within the limited Google App Engine runtime environment, then take advantage of Google's lower hosting costs.
If you need a more flexible cloud deployment platform, then AWS is a good fit for your needs.
Of course, you need to consider more issues than these when making a choice. In my development work, I've had the opportunity to use both and I can tell you that they require very different architecture decisions and present different sets of challenges. In this article, I will discuss some of the main challenges in more detail.
I assume you have a good understanding of Google App Engine and AWS. If not, read my previous articles "http://www.developer.com/features/article.php/3872151/Google-App-Engine-What-Is-It-Good-For.htm"Google App Engine: What Is It Good For?href="http://www.developer.com/features/article.php/3872986/Amazon-Web-Services-A-Developer-Primer.htm">Amazon Web Services: A Developer Primer
Google App Engine Challenges
Because Google App Engine is designed to scale your web applications -- adding server instances as needed -- some HTTP requests may require loading a server instance before the request can be satisfied. Google refers to these as "loading requests." The time required for loading requests varies, based on lots of comments on Google App Engine discussion groups and message boards. The smallest loading request times are reported for Python + DJango web applications (usually much less than a second). Java loading times are much longer, but they are still often less than a second. Google is implementing pre-loading options for Java that will improve the load time performance in the future.
Loading time for new virtual instances is a problem for other JVM languages, often requiring many seconds for JRuby and Clojure. Loading times for Scala are close to that for plain Java because compiled Scala class files are essentially indistinguishable from compile Java code. The difference is caused by code generated to support dynamic languages like JRuby and Clojure on the JVM. For applications running on dedicated servers, this extra load time is not a problem but it does affect applications hosted on Google App Engine. While I have experimented with JRuby and Clojure web applications on Google App Engine, at this time I would choose Python, Java, or Scala for production use.
The bottom line is using Google App Engine will be more restrictive than the development and deployment environments that you are used to. The datastore is more difficult to use than a relational database (which for example has global transactions, joins on tables, and a subset of the types of queries that you can do with a relational database). Not being able to start and manage long-running processes also makes some kinds of applications difficult to write.
** This article contains an HTML table showing information
** we cannot display properly in this email.
** To view the full article with table, visit
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
*** This article contains an HTML image showing comparative data.
*** To view the image, visit:
http://www.developer.com//services/article.php/3873286/Google-App-Engine-vs-Amazon-Web-Services-The-Developer-Challenges.htm
This message was sent to you by Anshuman -- if it was sent to you in
error, we apologize for the inconvenience. If you feel we should look
into why this happened, please visit http://www.jupitermedia.com/feedback.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Advertising: If you are interested in advertising in our newsletters,
call Claudia at 1-203-662-2863 or send email to
mailto:nsladsales@internet.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For details on becoming a Commerce Partner, contact David Arganbright on
1-203-662-2858 or visit http://www.jupitermedia.com/corporate/licensingform.html for the contact form
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To learn about other free newsletters offered by Jupitermedia or to
change your subscription visit http://e-newsletters.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
internet.com's network of more than 160 Web sites is organized into 12
channels: Developer http://internet.com/webdev/ Download
http://internet.com/downloads/ International
http://internet.com/international/ Internet Lists
http://internet.com/lists/ Internet News http://internet.com/news/
Internet Resources http://internet.com/resources/ IT
http://internet.com/it/ Small Business http://internet.com/sb/
Linux/Open Source http://internet.com/linux/ Windows Technology
http://internet.com/win/ Wireless Internet
http://internet.com/wireless/ xSP Resources http://internet.com/xsp/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To find an answer - http://search.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Looking for a job? Filling an opening? - http://jobs.internet.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This newsletter is published by Jupitermedia Corporation
Copyright (c) 2004 Jupitermedia Corporation. All rights reserved.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For information on reprinting or linking to Jupitermedia content:
http://www.jupitermedia.com/corporate/permissionform.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.
No comments:
Post a Comment