Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Google App Engine JAX PaaS Parade 2013

807 views

Published on

Presentation about Google App Engine from a Java Developer's perspective as shown at JAX 2013

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Google App Engine JAX PaaS Parade 2013

  1. 1. 25.04.13Dr. Halil-Cem Gürsoy, adesso AGTw @hgutwitG+ http://goo.gl/hljRSJAX 2013 – PaaS Parade GAE/J
  2. 2. Agenda● Google App Engine● Persistence in Google App Engine● Limits in GAE/J● Quota and Performance● Build-Tools● Getting started
  3. 3. The Google App Engine● A classic PaaS● No control over the OS● A runtime for Web Application● At the start, only Python was supported● Since 2009 Java, now Google Go● Fast growing*● 3B+ Request / Day● 300k+ Apps, 100k+ Developers*) Source: David Chandler, Developer Advocate @ Google, DevNexus Talk
  4. 4. Talking about GAE/J● GAE/J = JRE7● Supports Java 6, but will be dropped!● A Sandbox with some restrictions● Supports out of the box many but not allAPIs● Servlet API 2.4, JSF 2.1, JSP + JSTL, JDO, JPA● Limited support for JPA (no Joins)● Support for Google Services und API‘sThe Google App Engine
  5. 5. ● “JRE Whitelist” = supported JRE classes● https://developers.google.com/appengine/docs/java/jrewhitelist● Only ~ 1650 classes● Your application should not● …start „own“ threads– must use a GAE ThreadFactory, limit to 50● …write (and read non resource ) files● …open network socketsWhitelist
  6. 6. ● Overview frameworks and languages:● http://code.google.com/p/googleappengine/wiki/WillItPlayInJava● No support for…● JAX-RPC, JDBC, JMS (!), JMX, JNDI...● JAX-WS● Only Consumer, no Provider● Provider via javax.xml.soap & JAXB● + Scala, Groovy (look @ Gealky), JRuby● + Spring (Core)Will it play?
  7. 7. Some benefits● Integration of Google Services and APIs● SPDY, G+, Analytics, Blogger, Books,Google Cloud SQL, Maps etc.● Support of Android apps● Google Cloud Messaging● ...and for JavaScript● Google App Engine Channels
  8. 8. Quotas and Limits● GAE with limits w/o fee● Billing System to overcome limits● Quota exceeded: HTTP 403 Errors or Exceptions(bad if you not aware of quota)● Per minute quota = aprox. 500 Req./min.
  9. 9. Measured Performance
  10. 10. Build Tools● Ant supported by Google● Enhancement of entity classes● Deployment● Maven● Maven plug-in● Archetypes● Deployment● Gradle (Community)● https://github.com/bmuschko/gradle-gae-plugin
  11. 11. How getting started● Google App Engine Account activated?● You need your mobile number for activation● Eclipse with the Google Plug-in● Manual installation via Eclipse Market Place●http://marketplace.eclipse.org/content/google-plugin-eclipse● SDK & resources at GAE-Homepage● http://code.google.com/appengine/
  12. 12. Create Application in GAE● Register your application● https://appengine.google.com/ -> “Create Application”● Choose Application Identifier & Name● Choose the Authentication Option● Default is “Open to all Google Account users”● Users can sign using their Google Account● Choose Storage Option● High Replication (default) vs. Master/Slave● High Replication is “eventually consistent” (latency inwrites)
  13. 13. Create new project
  14. 14. Hello World
  15. 15. Test● You can test your application in the local sandbox● http://localhost:8888/[your_project_name]
  16. 16. Thank you for your attention.www.adesso.deinfo@adesso.de

×