Jan 21, 2015
Chris Schalk, Developer Advocate Ignacio Blanco, Software Engineer
Introduction to Google App Engine for Java
Con: Juan Pablo Picasso, Pablo Francavilla de Getsense
DevFest 2009 November 17th Buenos Aires
3
Agenda
• What does it take to host a Java Web application?
• Introducing Google App Engine for Java
• App Engine Review for Java – A Complete Java development stack
• Demos, Demos, Demos!
• Java App Engine use in Argentina
• Questions
4
What does it take (for a Java developer) to host a Web application?
5
Doing it yourself in Java is still complex!
6
Hosting with Java still means hidden costs
• Idle capacity
• Software patches & upgrades
• License fees
• IT staff server wrangling
• Traffic & utilization forecasting
• Upgrades
7
Google App Engine – now with Java!
• Easy to build
• Easy to maintain
• Easy to scale
And it’s still…
8
All the same services for Java App Engine as with Python
9
Apr 2008 Python launch May 2008 Memcache, Images API Jul 2008 Logs export Aug 2008 Batch write/delete Oct 2008 HTTPS support Dec 2008 Status dashboard, quota details Feb 2009 Billing, larger files Apr 2009 Java launch, DB import, cron support,
SDC May 2009 Key-only queries Jun 2009 Task queues Aug 2009 Kindless queries Sep 2009 XMPP Oct 2009 Incoming Email
18+ months in review
10
Same Distributed web hosting platform
11
Same Distributed web hosting platform
• Parallel processing
• Scales automatically
• Available globally
• Configuration free
• Built-in DoS protections
12
Same Distributed web hosting platform
SCALABILITY for Java as well
13
Same Specialized services
14
Same App Engine Dashboard
15
Same initial free use policy as Python
• ~5M pageviews/month
• 6.5 CPU hrs/day
• 1 GB storage
• 650K URL Fetch calls
• 2,000 recipients emailed
• 1 GB/day bandwidth
• N tasks
16
App Engine and Java Standards
17
Based on Java Standards
18
Based on Java Standards
19
Extended Language support through JVM
• Java • Scala • JRuby (Ruby) • Groovy • Quercus (PHP) • Rhino (JavaScript) • Jython (Python)
Duke, the Java mascot Copyright © Sun Microsystems Inc., all rights reserved.
20
Development Tools for Java App Engine
21
Google’s Complete Java Development Stack
+
22
Google Plugin for Eclipse
23
Google Plugin for Eclipse
24
NeatBeans Plugin for Java App Engine
http://kenai.com/projects/nbappengine/
25
Demo
• Getting started – How to get an account
– Dealing with registration issues here in Argentina
26
Demo
• How to build and deploy a Java AE App in 30 seconds
27
Demo
• Lolcat Wave Robot – From the GWT client
to a Google Wave Bot!
28
Demo
• Demonstrating “Plane Crazy” • Uses DataStore for Airplane, Activities, People data
• Uses email service for correspondence
• Uses XMPP for simple chatbot access
Live Demo: http://plane-crazy.appspot.com Source: http://code.google.com/p/plane-crazy-demo/
Java Development with Google App Engine in Argentina
Local Experts using Google App Engine for Java
Juan Pablo Picasso, Pablo Francavilla
Using App Engine and other Google Cloud products
• Cashflow Spreadsheets Integration
• latamvalley.com
Cashflow Spreadsheets Integration
– “Google Apps + Your Apps”: integración de Google Spreadsheets con SaaS financiero mediante GAE/J
– Reportes
– Escenarios
– URL Fetch API – XML
• Costo cero en infraestructura
• Reutilización de know-how Java
• Disponibilidad del Servicio
• Comunidad muy activa y en crecimiento
+ = Optimización de procesos internos
Cashflow Spreadsheets Integration
latamvalley.com
latamvalley.com
• “Uniendo a las Personas y Proyectos de Internet de Latinoamérica”
• Base abierta de:
• Empresas
• Personas
• Productos
• Proveedoras de Servicios
• Inversoras de Capital
• Apache Wicket
• Images API
• Datastore Persistence (JDO)
• Custom authentication
• JUnit
+ = Scrum Working Software desde la iteración
1 (one week)
latamvalley.com
Nuestro “Feedback”
• Import/Export SQL • SSL para Google Apps Domains • Generación de Imágenes • + tools para entorno development • Tools Python == Tools Java
37
Questions
Q&A
Chris Schalk • Twitter: @cschalk • [email protected]
Ignacio Blanco • [email protected]
Getsense
Juan Pablo Picasso, Pablo Francavilla
http://groups.google.com/group/gtug-ar
Foro GAE en Español La seguimos en el break [email protected]