300 - multiplatform apps on google cloud platform

29

Click here to load reader

Upload: mobilemonday-tel-aviv

Post on 06-May-2015

438 views

Category:

Technology


4 download

DESCRIPTION

Google Cloud Platform presentation as presented in Mobile Monday Tel Aviv event on January 2014

TRANSCRIPT

Page 1: 300 - Multiplatform Apps on Google Cloud Platform

Multi Platform Apps on the Google Cloud Platform

Nir ChinskyHead Of Cloud Platform - [email protected]

#MobileMonday

Page 2: 300 - Multiplatform Apps on Google Cloud Platform

Why Cloud for Mobile Apps?

Scale on Demand

Analytics for User Engagement and

Retention

Social and Connected Apps are

becomingmore popular

Global Availability

Focus on developing your

App - reduced time to market

Page 3: 300 - Multiplatform Apps on Google Cloud Platform

Google confidential │ Do not distribute

The Economic Factor

Your App

Cost

Build own DCHire SysAdminBuild App

Use Cloud (No CapEx)Hire SysAdminBuild App

Use Platform(Reduce admin overheads)Build App

Infrastructure

Infrastructure Management

Developers

Page 4: 300 - Multiplatform Apps on Google Cloud Platform

Proven Google hardware and software infrastructure for running your gaming backends and services

APIs to monetize, build and integrate, and mobile & web stores for distribution

Pay only for what you use

Get started easily and grow fast. Complete architectural flexibility across PaaS and/or Iaas.

Why Google for Cloud?

Page 5: 300 - Multiplatform Apps on Google Cloud Platform

Google Cloud Platform

Page 6: 300 - Multiplatform Apps on Google Cloud Platform

Google InfrastructurePerformance

Redundancy

Disaster Recovery

Audits & Certifications

Security

Energy Efficient

Global Data Centers

99.95% Uptime SLA

Compute Storage ServicesCompute Engine (IaaS)

App Engine (PaaS)

Cloud Storage (Object)

Cloud SQL (Relational)

Cloud Datastore (NoSQL)

BigQuery

Cloud EndPoints

Caching

Queues

and more...

Google Services

Page 7: 300 - Multiplatform Apps on Google Cloud Platform

Google Cloud Platform is built on the same infrastructure that powers Google.

Your app here

Page 8: 300 - Multiplatform Apps on Google Cloud Platform

A Network that Spans the Globe

Cloud Platform

Page 9: 300 - Multiplatform Apps on Google Cloud Platform

• Platform-as-a-service

• Popular Programming Language Support

• Auto-scaling

• Versioning and Traffic Splitting

• Static Content Serving and Caching

• Local Developer Tools

• European Zones for Locality and Compliance

• Google FrontEnds protect against DOS attacks

• Integrated Auth for Google Accounts

App Engine

Features

Page 10: 300 - Multiplatform Apps on Google Cloud Platform

• Multiple OS Virtual Machines

• Large range of Instance types

• Sub-Hour Billing

• Shared core VM types (Micro and Small)

• Persistent Disk (up to 10TB) options

• Advanced Networking

• Load Balancing

• Service Accounts for auth to other services

• API for management of Compute Resources

Compute Engine

Features

Page 11: 300 - Multiplatform Apps on Google Cloud Platform

Google confidential │ Do not distribute

Launching 100 virtual machines

Page 12: 300 - Multiplatform Apps on Google Cloud Platform

Scalability

APIBigQuery is an API and can easily be integrated with your own Apps or with 3rd Party Apps

Insights into User Acquisition and Engagement, Automate Retention based on analysis

Analysis

Grows with your project, scales horizontally to 100 Bn's of rows with no loss of performance on interactive queries

Big Query

Features

Page 13: 300 - Multiplatform Apps on Google Cloud Platform

Google confidential │ Do not distribute

Cloud Endpoints

• Build Server side logic on full power, management free App Engine platform

• Expose standards based REST interfaces with built in Authorization

• Use auto-generated, strongly typed, mobile optimized client libraries for Android, iOS and web.

Page 14: 300 - Multiplatform Apps on Google Cloud Platform

Google confidential │ Do not distribute

Cloud Endpoints● Create APIs for Mobile Apps/Games to

communicate with Apps/Gaming Backends

● Add annotations to client interface application code or generate Endpoint classes from Models.

● Discoverable, Restful APIs implemented on top of Google’s API Infrastructure

● Tools available for generating Client Libraries for Android, iOS and JavaScript

● Built-In Authentication SupportStorage Web APIs

Page 15: 300 - Multiplatform Apps on Google Cloud Platform

Making MoneyAdmob / Google Play

Understanding your user allows you to optimise in-app sales.

Source: GartnerNote: Apple as paid >$3B$´s to developers as of 9/11, implying gross app market revenue of $4B in 3 years; Google indicated during CQ3 earnings call that it expects $2.5B mobile ad revenue in 2011E

Mobile A

d + Apps S

pending (billions)

$0.7B

$12B

Drive revenue from your content using in-app advertising.

Page 17: 300 - Multiplatform Apps on Google Cloud Platform
Page 18: 300 - Multiplatform Apps on Google Cloud Platform

Apps on the Google Cloud Platform

Page 19: 300 - Multiplatform Apps on Google Cloud Platform
Page 20: 300 - Multiplatform Apps on Google Cloud Platform

● Deliver dynamic App content● Facilitate multiplayer games, including matching players● Store data outside of the mobile device, e.g., the last completed level, or

the scores achieved in previous plays● Manage leaderboards and achievements● Orchestrate push notifications● Facilitate in-App purchases● Perform user analytics

App/Gaming Backends to ...

Page 21: 300 - Multiplatform Apps on Google Cloud Platform

● Support iOS and Android Devices + Web

● Scalable to Millions of Users

● Engaging Social Components

Mobile App Reference Architecture

Page 22: 300 - Multiplatform Apps on Google Cloud Platform

Java - App Engine

App APISend App Invitation

@ApiMethod(httpMethod = "PUT", path ="app/{appId}/invitation/{userId}") public InvitationResult sendInvitation(

@Named("appId") Long gameId, @Named("appId") Long playerId,

User user)throws ServiceException { }

Java - Android AppInvitationResult invitation = appBackend.sendInvitation( appId, userId)).execute();

Page 23: 300 - Multiplatform Apps on Google Cloud Platform

Cloud Endpoints DevelopmentGenerate Client Library

Java - App Engine

Mobile Game-AppEngine $ endpoints.sh get-client-lib org.arw.examples.appengine.mobilegame.GameInviteEndpoint

Jul 17, 2013 3:05:32 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXmlINFO: Successfully processed ./war/WEB-INF/appengine-web.xmlAPI configuration written to ./gameinviteendpoint-v1.apiAPI Discovery Document written to ./gameinviteendpoint-v1-rpc.discoveryAPI Discovery Document written to ./gameinviteendpoint-v1-rest.discoveryAPI client library written to ./gameinviteendpoint-v1-java.zip

Page 24: 300 - Multiplatform Apps on Google Cloud Platform

Push Notifications● App Engine supports mobile device

messaging○ Apple Push Notifications (using

Sockets API)○ Google Cloud Messaging (using

GCM Server)● Examples:

○ Send game invites from friends○ Display ‘toasts’ with important

messages

Page 25: 300 - Multiplatform Apps on Google Cloud Platform

Data and Object Storage● Cloud Storage

○ Dynamic Content○ Large Binary Objects○ Served Directly via URL

● Cloud DataStore○ Finer grained properties (Device

registration, in-game purchases, etc)● Memcache

○ Improved performance and scalability○ Lower costs

Page 26: 300 - Multiplatform Apps on Google Cloud Platform

Wrap Up

Page 27: 300 - Multiplatform Apps on Google Cloud Platform

#MobileMonday

Page 28: 300 - Multiplatform Apps on Google Cloud Platform

#MobileMonday

Page 29: 300 - Multiplatform Apps on Google Cloud Platform

Google confidential | Do not distribute

Thank YouNir