Google Cloud Endpoints - DevFest - Nantes 2012

Embed Size (px)

DESCRIPTION

Les slides de ma présentation sur Google Cloud Endpoints au DevFest de Nantes en Nov. 2012. A la fin des slides, vous pouvez visualisez la vidéo de la conférence.

Citation preview

  • 1. Google Cloud EndpointsDvelopper un backend sur App Engine pour des applicationsAndroid, iOS et WebMaxime Grau, Architecte Technique, Ministre des Finances

2. Pourquoi sommes nous lUtiliser Google App Engine entant que backend pour demultiples clientsIntroduire Google CloudEndpoints#devfestnantes 3. Donc vous souhaitez crer une application#devfestnantes 4. Donc vous souhaitez crer une application... car vous avez une super ide !#devfestnantes 5. Donc vous souhaitez crer une application... vous voyez, lide qui va vous rendre millionnaire #devfestnantes 6. Donc vous souhaitez crer une application... elle doit donc tre disponible sur plusieurs plate-formes#devfestnantes 7. Donc vous souhaitez crer une application... elle doit galement tre capable de grer des montes en charge#devfestnantes 8. Vous pensez larchitecturea ressemblerait quelque chose dans ce genre #devfestnantes 9. Vous commencez limplmenterVous choisissez votre stack open source#devfestnantes 10. Vous commencez limplmenterVous dcidez du fonctionnement de votre API#devfestnantes 11. Vous commencez limplmenterVous dcidez du fonctionnement de votre API#devfestnantes 12. Vous commencez limplmenterVous commencer dvelopper vos applications clientes#devfestnantes 13. Et vous lancez votre application !La gestion des ressources, du load balancing... va devenir un travail temps plein#devfestnantes 14. Que faisons nous VS Quest ce que nous voulions faire #devfestnantes 15. App EngineUn framework web et une plate-forme de dploiement Facile coder/dployer Scalabilit simplifie Administration triviale 1 mois dactivit sur App Engine1,000,000 applications actives 2 Trillion doprations dans le datastore #devfestnantes 16. Google App Engine: Principales caractristiques Stockage Calcul ServicesDatastore, Cloud SQL, Frontends, Backends,Users, Mail, Images, MemcacheTask Queues, Cron UrlFetch, MapReduce, TrafficSplitting, Search #devfestnantes 17. Utiliser App Engine en tant que Backend, et le reste ? #devfestnantes 18. Prsentation de Google Cloud Endpoints Available for Trusted Testers #devfestnantes 19. Endpoints: Comment a marcheEcrire son code Annoter les Gnrer les Dvelopper lesct backendmthodes de bibliothques applicationslAPI clientesclientes #devfestnantes 20. Endpoints: Comment a marcheWrite your codeEcrire sonAnnoter lesGnrer les Dvelopper lesct backendbackend codemthodes debibliothques applicationslAPIclientesclientes Java public class HotelEndpoint { public List searchHotel(String term) { // method logic here return hotelList; } }#devfestnantes 21. Endpoints: Comment a marcheEcrire son code Annotate APIAnnoter les Gnrer les Dvelopper lesct backendmethods demthodesbibliothques applicationslAPI clientesclientesJava @Api(name = "bookingendpoint") public class HotelEndpoint { public List searchHotel(@Named("term") String term) { // method logic here return hotelList; } } #devfestnantes 22. Endpoints: Comment a marcheEcrire son codeAnnoter les Generate client Gnrer les Dvelopper lesct backend mthodes de libraries bibliothques applications lAPI clientesclientes localhost:home user$ ./endpoints.sh get-java-client-lib HotelEndpointJava ========================================================== .. API configuration written to war/WEB-INF/bookingendpoint-v1.api API Discovery Document written to war/WEB-INF/bookingendpoint-v1-rest. discovery API client library written to war/WEB-INF/bookingendpoint-v1-java.zip#devfestnantes 23. Endpoints: Comment a marcheEcrire son codeAnnoter lesGnrer lesWrite client apps Dvelopper lesct backend mthodes debibliothquesapplications lAPIclientes clientes import com.appspot.api.services.bookingendpoint.Bookingendpoint; Java Bookingendpoint service = new Bookingendpoint(transport, jsonFactory, null); List list = service.searchHotel(term).execute().getItems();JS gapi.client.load(bookingendpoint, v1, function() { gapi.client.bookingendpoint.hotels.search({term: term}).execute(function(resp) { console.log(resp);}); }, https://cloud-booking.appspot.com/_ah/api); #devfestnantes 24. Cloud Booking Application#devfestnantes 25. Google Cloud Endpoints pour "Cloud Booking" Filtre Recherche Authentification#devfestnantes 26. DmoCloud Booking Application- Web : https://cloud-booking-client.appspot.com/client-js/- Android : https://cloud-booking-client.appspot.com/client-android/booking-client-android.apk 27. Caractristiques API ClientOutilsPython ou Java backendGnration du code client App Engine Dev AppServerConfiguration base sur desiOS (Objective C)Google Plugin for Eclipseannotations Android (Java) Discovery et APIs ExplorerOAuth2 support Browser (Javascript)GZip#devfestnantes 28. Google App Engine et Google Cloud Endpoints ScalabilitFlexibilit Simplicit #devfestnantes 29. Merci !Merci Thomas Delhomnie pour lapplication AndroidThank you to Dan Holevoet for slides +Maxime Grau @mgreau github.com/mgreau 30. Web AndroidQuestions?Code source:http://github.com/mgreauFormulaire dinscription en tant que testeur endpoints-trusted-tester.appspot.com 31. #devfestnantes