O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Google App Engine JAX PaaS Parade 2013

811 visualizações

Publicada em

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

Publicada em: Tecnologia, Negócios
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

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