1 / 28

Google App Engine(GAE)

Google App Engine(GAE). Ma, Zhichao 2012.06.19. Cloud. Agenda. What is GAE? Why GAE? Pricing Experiment Assessment. GAE. Overview Runtime environment & Architecture Datastore Services Administration console. Overview. PaaS Run web apps on Google's infrastructure

borna
Télécharger la présentation

Google App Engine(GAE)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Google App Engine(GAE) Ma, Zhichao 2012.06.19

  2. Cloud

  3. Agenda What is GAE? Why GAE? Pricing Experiment Assessment

  4. GAE Overview Runtime environment & Architecture Datastore Services Administration console

  5. Overview PaaS Run web apps on Google's infrastructure Easy to build, Easy to maintain, Easy to scale API Support languages: Python, Java(JVM-based interpreter or compiler), Go Domain: http://youappid.appspot.com/ Who's using App Engine

  6. Runtime Environment(Java) ServletEnvironment, Java 6 No state 30 seconds limit Sandbox:walled arena

  7. Architecture The App Engine request handling architecture

  8. DataStore High Replication Datastore(HRD) Blobstore Google Cloud SQL

  9. High Replication Datastore(HRD) Based on big table Schemaless JDO, JPA Kind, Entity, property, key

  10. kind 属性 属性 实体 ……

  11. Saving entities • Entity e = new Entity(“STUDENT”); • e.name = “zhangsan”; • datastore.put( e ); • Deleting entity • Entity e = datastore.get(key); • datastore.delete( e );

  12. Query • API • Query q = new Query("Person"); q.addFilter("lastName", Query.FilterOperator.EQUAL, lastNameParam); q.addFilter("height", Query.FilterOperator.LESS_THAN, maxHeightParam); PreparedQuerypq = datastore.prepare(q); for (Entity result : pq.asIterable()) { } • GQL: SQL-like, no join

  13. GQL syntax: SELECT [* | <property list> | __key__] FROM <kind>[WHERE <condition> [AND <condition> ...]][ORDER BY <property> [ASC | DESC] [, <property> [ASC | DESC] ...]][LIMIT [<offset>,]<count>][OFFSET <offset>]<condition> := <property> {< | <= | > | >= | = | != } <value><condition> := <property> IN <list><condition> := ANCESTOR IS <entity or key>

  14. Blobstore Object:Up to 2G Writing Files to the Blobstore (Experimental)

  15. Google Cloud SQL Web service Based on MySql Preview

  16. Services Taskqueues and Cron jobs Memcache Images Users Mails Url Fetch ……

  17. Task Queues and Cron Jobs Work that can’t be done within 30sec Ensures every task gets done eventually Enqueue task within transaction Cron Jobs: scheduled tasks

  18. Administration console Web-based interface Create and manage app View resource usage statistics View logs

  19. Agenda What is GAE? Why GAE? Pricing Experiment Assessment

  20. Why GAE? Scalability Lower total cost of ownership Rich set of APIs Fully featured SDK for local development Ease of deployment Web administration console and diagnostic utilities

  21. Agenda What is GAE? Why GAE? Pricing and Quotas Experiment Assessment

  22. Pricing and Quotas

  23. Agenda What is GAE? Why GAE? Pricing and Quotas Experiment Assessment

  24. Experiment

  25. Assessment Easy to build Easy to scale Easy to maintain API Limit

  26. Useful resources https://developers.google.com/appengine/ http://www.google.com/enterprise/cloud/appengine/pricing.html

  27. Q&A

  28. Thank you !

More Related