From Wikipedia, the free encyclopedia
Google App Engine
Google App Engine
Google App Engine
developed application. Third-party libraries written in pure Python may also be uploaded.[3][4]
Google App Engine Logo Developed by Initial release Operating system Type Website Google April 7, 2008 Any (web based application) Web development appengine.google.com
Differences from other application hosting
Compared to other scalable hosting services such as Amazon EC2, App Engine provides more infrastructure to make it easy to write scalable applications, but can only run a limited range of applications designed for that infrastructure. App Engine’s infrastructure removes many of the system administration and development challenges of building applications to scale to millions of hits. Google handles deploying code to a cluster, database sharing, monitoring, failover, and launching application instances as necessary. While other services let users install and configure nearly any *NIX compatible software, AppEngine requires developers to use Python or Java as the programming language and a limited set of APIs. Current APIs allow storing and retrieving data from a BigTable non-relational database; making HTTP requests; sending e-mail; manipulating images; and caching. Most existing Web applications can’t run on App Engine without modification, because they require a relational database. Per-day and per-minute quotas restrict bandwidth and CPU use, number of requests served, number of concurrent requests, and calls to the various APIs, and individual requests are terminated if they take more than 30 seconds or return more than 10MB of data.
Google App Engine is a platform for building and hosting web applications on Google’s infrastructure. It was first released as a beta version in April 2008. Based on cloud computing technology, Google App Engine uses multiple servers to run an application and store data, and automatically adjusts the number of servers to handle requests reliably.[1] Comparable cloud-based platforms include offerings such as Amazon Web Services and Microsoft’s Azure Services Platform. Google App Engine is free up to a certain level of used resources, after which fees are charged for additional storage, bandwidth, or CPU cycles required by the application.[2]
Supported programming languages and frameworks
Currently, the supported programming languages are Python and Java (and, by extension, other JVM languages such as JRuby and Scala). A limited version of the Django web framework is available, as well as a custom Google-written web app framework similar to JSP or ASP.NET. Google has said that it plans to support more languages in the future, and that the Google App Engine has been written to be language independent. Any Python framework that supports the WSGI using the CGI adapter can be used to create an application; the framework can be uploaded with the
Differences between SQL and GQL
Google App Engine’s datastore has a SQLlike syntax called "GQL". Select statements in GQL can be performed on one table only. GQL intentionally does not support the Join statement, because it is seen to be inefficient
1
From Wikipedia, the free encyclopedia
Quota Apps per developer Time per request Files per app HTTP response size Datastore item size Application code size when queries span more than one machine.[5] Instead, one-to-many and many-tomany relationships can be accomplished using ReferenceProperty().[6] This shared-nothing approach allows disks to fail without the system failing.[7] The where clause of select statements can perform >, >=, <, <= operations on one column only. Therefore, only simple where clauses can be constructed. Switching from a relational database to the Datastore requires a paradigm shift for developers when modeling their data. App Engine limits the maximum rows returned from an entity get to 1000 rows per Datastore call. This constraint does not affect web applications written to be read by humans, as these usually do not list as many as 1000 records on a single page (they may have paging and caching mechanisms in place). If an application needs more than 1000 records per operation, it can use its own client-side software or an Ajax page to perform an operation on an unlimited number of rows by issuing queries sequentially. Unlike a relational database such as DB2, Microsoft SQL Server, MySQL, Oracle, or PostgreSQL, the Datastore API is not relational in the SQL sense.
Google App Engine
Limit 10 30 sec 1,000 10 MB 1 MB 150 MB
Downloading data from App Engine
SDK version 1.2.2 adds support for bulk downloads of data.[8] The open source projects gaebar[9], approcket[10], and gawsh[11] also allow users to download and backup App Engine data.
Quota rates
App Engine defines usage quotas for free applications. Extensions to this quotas can be requested, and application authors can pay for additional resources.[12]
Hard limits Free quotas
Application creators who enable billing pay only for CPU, bandwidth, storage, and emails used in excess of the free quotas. Limits marked with * are increased for application authors who enable billing, even if their application never uses enough resources to incur charges. Free quotas will be reduced on May 25, 2009.[13]
Restrictions
• Developers have read-only access to the filesystem on App Engine. • App Engine can only execute code called from an HTTP request (except for scheduled background tasks). • Users may upload arbitrary Python modules, but only if they are pure-Python; C and Pyrex modules are not supported. • App Engine limits the maximum rows returned from an entity get to 1000 rows per Datastore call.
Competition
The service competes with Amazon Web Services, a set of application services that enable web sites to host files and execute code on Amazon’s servers. Many tech analysts have been predicting Google’s entry into this field for years. "Google finally realizes it needs to be the web platform," Techdirt publisher Mike Masnick wrote. "The easier it is to develop and deploy highly scalable web applications, the more innovative and creative solutions we’re going to start to see."[14] Other competitors include Microsoft’s Azure Services Platform.
2
From Wikipedia, the free encyclopedia
Quota Emails per day Bandwidth in per day Bandwidth out per day Secure bandwidth in per day Secure bandwidth out per day CPU megacycles per day HTTP Requests per Day Datastore API calls per day Data stored URLFetch API calls per day Limit 2,000
Google App Engine
10,000 MB 10,000 MB 2,000 MB 2,000 MB 200,000,000 1,333,328* 10,368,000* 1 GB 657,084* http://code.google.com/appengine/ articles/quotas.html. Retrieved on 2008-09-10. [13] Google, Inc., Upcoming Changes to the Free Quotas, accessed February 26 ,2009 [14] "Google Finally Realizes It Needs To Be The Web Platform". 2008-04-07. http://techdirt.com/articles/20080407/ 225749782.shtml. Retrieved on 2008-04-12.
References
[1] http://code.google.com/appengine/docs/ python/runtime.html [2] http://code.google.com/appengine/docs/ quotas.html [3] http://code.google.com/appengine/docs/ whatisgoogleappengine.html [4] http://code.google.com/appengine/docs/ python/tools/webapp/overview.html [5] http://www.youtube.com/ watch?v=oG6Ac7d-Nx8 [6] http://code.google.com/appengine/ articles/modeling.html • Official site [7] http://highscalability.com/google• Google App Engine - Run your web architecture applications on Google’s infrastructure - a [8] http://code.google.com/appengine/docs/ technical talk by Google engineer Guido python/tools/ van Rossum uploadingdata.html#Downloading_Data_from_App_Engine at Stanford University. (online video archive) [9] http://github.com/aral/gaebar/tree/ • Frameworks and libraries supported by master Google App Engine Java - Google [10] http://code.google.com/p/approcket/ Documents [11] http://code.google.com/p/gawsh/ • Run your PHP scripts on the Google App [12] "Understanding Application Quotas with Engine Google App Engine".
External links
Retrieved from "http://en.wikipedia.org/wiki/Google_App_Engine" Categories: Wikipedia articles needing reorganization, Beta software, Cloud platforms, Google services This page was last modified on 12 May 2009, at 07:27 (UTC). All text is available under the terms of the GNU Free Documentation License. (See Copyrights for details.) Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a U.S. registered 501(c)(3) taxdeductible nonprofit charity. Privacy policy About Wikipedia Disclaimers
3