87
App Engine for Business 2 Patrick Chanezon Developer Advocate [email protected] http://twitter.com/chanezon #devfestau Sydney June 29 2010 Wednesday, June 30, 2010

Google App Engine for Business - Sydney Devfest

Embed Size (px)

DESCRIPTION

Overview of Google App Engine for Business at Sydney Devfest June 29 2010

Citation preview

Page 1: Google App Engine for Business - Sydney Devfest

App Engine for Business

2

Patrick ChanezonDeveloper [email protected]://twitter.com/chanezon

#devfestau SydneyJune 29 2010

Wednesday, June 30, 2010

Page 2: Google App Engine for Business - Sydney Devfest

The benefits of Cloud Computing

Economics Pay for only what you use TCO OPEX vs CAPEXOperations Day to day: no maintenance Fighting fires: no PagersElasticityFocus on your Business

2

Wednesday, June 30, 2010

Page 3: Google App Engine for Business - Sydney Devfest

Build your own

Google App Enginefor Business

Buy from others

Google Apps Marketplace

Enterprise Firewall

Enterprise Data Authentication Enterprise Services User Management

Google Apps Platform

Buy from Google

Google Apps for Business

Build and Buy all your enterprise cloud apps...

3

Wednesday, June 30, 2010

Page 4: Google App Engine for Business - Sydney Devfest

Customers want more Apps

4

GoogleApps

Businessin the cloud

Wednesday, June 30, 2010

Page 5: Google App Engine for Business - Sydney Devfest

Leveraging Google's Leadership in Cloud Computing• Massive data center operations• Purpose built hardware• Multi tenant software platform at Internet scale

5

Wednesday, June 30, 2010

Page 6: Google App Engine for Business - Sydney Devfest

0.5B+ daily Pageviews

250,000+ Developers

100,000+ Apps

By the numbers

6

Wednesday, June 30, 2010

Page 7: Google App Engine for Business - Sydney Devfest

App Engine

7

Wednesday, June 30, 2010

Page 8: Google App Engine for Business - Sydney Devfest

Socialwok

8

Wednesday, June 30, 2010

Page 9: Google App Engine for Business - Sydney Devfest

Chillingo CrystalGaming meets Social

Cogs

Guerilla Bob

Zombie Dash Angry Birds LITE Underground Meltdown

Mission Deep Sea Speed ForgeExtreme

Ravensword:The Fallen King

Angry Birds

9

Wednesday, June 30, 2010

Page 10: Google App Engine for Business - Sydney Devfest

gigy Socialize

10

Wednesday, June 30, 2010

Page 11: Google App Engine for Business - Sydney Devfest

gigy Socialize - traffic

11

Wednesday, June 30, 2010

Page 12: Google App Engine for Business - Sydney Devfest

gigy Socialize - traffic

11

Wednesday, June 30, 2010

Page 13: Google App Engine for Business - Sydney Devfest

App Engine

12

Wednesday, June 30, 2010

Page 14: Google App Engine for Business - Sydney Devfest

エコポイント

13

Wednesday, June 30, 2010

Page 15: Google App Engine for Business - Sydney Devfest

Build your Enterprise Apps on Google

• Easy to Build - Java standards

• Easy to Deploy - push-button deployment

• Easy to Scale - from small apps to millions of users

14

Wednesday, June 30, 2010

Page 16: Google App Engine for Business - Sydney Devfest

Google App Engine for Business

• Centralized administration - controls

• Reliability and support - SLA, Premium support

• Secure by default - only your users

• Pricing that makes sense - pay only for what you use

• Enterprise features - hosted SQL, SSL on your domain

15

Wednesday, June 30, 2010

Page 17: Google App Engine for Business - Sydney Devfest

Understanding the Cloud Computing Landscape

IaaS

PaaS

SaaS

Source: Gartner AADI Summit Dec 2009

16

Wednesday, June 30, 2010

Page 18: Google App Engine for Business - Sydney Devfest

Google Storage for DevsMachine Learning

BigQuery

Google App Engine

Google's Cloud Offerings

IaaS

PaaS

SaaS

1. Our Apps2. 3rd party Apps: Google Apps Marketplace3. ________

17

Wednesday, June 30, 2010

Page 19: Google App Engine for Business - Sydney Devfest

Google Storage for DevsMachine Learning

BigQuery

Google App Engine

Google's Cloud Offerings

IaaS

PaaS

SaaS

Your Apps

1. Our Apps2. 3rd party Apps: Google Apps Marketplace3. ________

17

Wednesday, June 30, 2010

Page 20: Google App Engine for Business - Sydney Devfest

Domain Console

18

Wednesday, June 30, 2010

Page 21: Google App Engine for Business - Sydney Devfest

Domain Console

Like the regular admin consoleDesigned to manage enterprises with a portfolio of apps• Keep track of all apps in a domain• Access Control: view apps, deploy• Global Settings: apply to all apps in the domain • Billing rolling up to single account• DNS configuration done only once: *.ext.example.com• All apps by default for logged in users from domain

19

Wednesday, June 30, 2010

Page 22: Google App Engine for Business - Sydney Devfest

Google Apps Integration• SSO/SSO delegation• APIs for most Google Apps for integration 

20

Wednesday, June 30, 2010

Page 23: Google App Engine for Business - Sydney Devfest

Federate your on-premise data

21

Wednesday, June 30, 2010

Page 24: Google App Engine for Business - Sydney Devfest

Secure Data Connector (SDC)

22

Wednesday, June 30, 2010

Page 25: Google App Engine for Business - Sydney Devfest

Using Secure Data Connector

23

Wednesday, June 30, 2010

Page 26: Google App Engine for Business - Sydney Devfest

Using Secure Data Connector

Installation- Determine access rules- Configure and install SDC

23

Wednesday, June 30, 2010

Page 27: Google App Engine for Business - Sydney Devfest

Using Secure Data Connector

Installation- Determine access rules- Configure and install SDC

Getting ready to serve- SDC opens SSL tunnel

23

Wednesday, June 30, 2010

Page 28: Google App Engine for Business - Sydney Devfest

Using Secure Data Connector

Installation- Determine access rules- Configure and install SDC

Getting ready to serve- SDC opens SSL tunnel

Serving- User request sent to App Engine- User authenticated- App makes request through tunnel- SDC performs access checks- Results returned

23

Wednesday, June 30, 2010

Page 29: Google App Engine for Business - Sydney Devfest

App Engine for Business Pricing

Intranet apps:Each app costs $8 / active user / monthCapped at $1,000 / month (i.e. users above 125 are free)Apps are auth-restricted to domain usersDevelopment is freeOverage charges on Background Analysis/Storage

Non intranet apps (external/public/ISV apps):Pricing TBD Postpaid (i.e. billed at the end of month)

24

Wednesday, June 30, 2010

Page 30: Google App Engine for Business - Sydney Devfest

App Engine for Business Support and SLAPaid Support Email based 1000$/month 1h response time on operational issues 8h on development issues SLA 99.9% uptime Service credits from 10% to 100% refund of monthly bill

25

Wednesday, June 30, 2010

Page 31: Google App Engine for Business - Sydney Devfest

Gadgets JS Maps APISearch KML 3DApp Engine

Google Developer Qualification

Chrome Extensions

26

Wednesday, June 30, 2010

Page 32: Google App Engine for Business - Sydney Devfest

Distributed Cloud ComputingReliability and scalability memes

27

A “meme” is a term coined by Richard Dawkins, referring to a unit of cultural information transferable from one mind to another.

Wednesday, June 30, 2010

Page 33: Google App Engine for Business - Sydney Devfest

Know your Distributed MemesDistribute it. Tolerate it. Tune it. Scale it!

28

Wednesday, June 30, 2010

Page 34: Google App Engine for Business - Sydney Devfest

Know your Distributed MemesDistribute it. Tolerate it. Tune it. Scale it!

Distribute it• Divide & conquer; parallelize work• Sharding• Amortize work / pre-compute values

28

Wednesday, June 30, 2010

Page 35: Google App Engine for Business - Sydney Devfest

Know your Distributed MemesDistribute it. Tolerate it. Tune it. Scale it!

Distribute it• Divide & conquer; parallelize work• Sharding• Amortize work / pre-compute values

Tolerate it• Tolerate, expect and plan for small failures• Idempotency, idempotency

28

Wednesday, June 30, 2010

Page 36: Google App Engine for Business - Sydney Devfest

Know your Distributed MemesDistribute it. Tolerate it. Tune it. Scale it!

Distribute it• Divide & conquer; parallelize work• Sharding• Amortize work / pre-compute values

Tolerate it• Tolerate, expect and plan for small failures• Idempotency, idempotency

Tune it• Memcache• Denormalization isn’t a bad word

28

Wednesday, June 30, 2010

Page 37: Google App Engine for Business - Sydney Devfest

Know your Distributed MemesDistribute it. Tolerate it. Tune it. Scale it!

Distribute it• Divide & conquer; parallelize work• Sharding• Amortize work / pre-compute values

Tolerate it• Tolerate, expect and plan for small failures• Idempotency, idempotency

Tune it• Memcache• Denormalization isn’t a bad word

Scale it• Statelessness; retries• Just scale it up

28

Wednesday, June 30, 2010

Page 38: Google App Engine for Business - Sydney Devfest

How not to succeed…

29

Wednesday, June 30, 2010

Page 39: Google App Engine for Business - Sydney Devfest

How not to succeed…

Begin

29

Wednesday, June 30, 2010

Page 40: Google App Engine for Business - Sydney Devfest

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 41: Google App Engine for Business - Sydney Devfest

Send Invitations

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 42: Google App Engine for Business - Sydney Devfest

Can EVERYONE

Come?

Send Invitations

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 43: Google App Engine for Business - Sydney Devfest

True Have party

End

Can EVERYONE

Come?

Send Invitations

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 44: Google App Engine for Business - Sydney Devfest

False

Just one person says

“No”

True Have party

End

Can EVERYONE

Come?

Send Invitations

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 45: Google App Engine for Business - Sydney Devfest

False

Just one person says

“No”

EndCancel party

True Have party

End

Can EVERYONE

Come?

Send Invitations

How not to succeed…

Plan PartyBegin

29

Wednesday, June 30, 2010

Page 46: Google App Engine for Business - Sydney Devfest

Rocket science“Monolithic Computing” era

30

Wednesday, June 30, 2010

Page 47: Google App Engine for Business - Sydney Devfest

Rocket science“Monolithic Computing” era

Hot spare“Just in case”

30

Wednesday, June 30, 2010

Page 48: Google App Engine for Business - Sydney Devfest

Distributed Meme:Tolerate, expect and design for failure

MTFB: O(Years)

31

Wednesday, June 30, 2010

Page 49: Google App Engine for Business - Sydney Devfest

Distributed Meme:Tolerate, expect and design for failure

MTFB: O(Years)

31

Wednesday, June 30, 2010

Page 50: Google App Engine for Business - Sydney Devfest

Distributed Meme:Tolerate, expect and design for failure

MTFB: O(Months)

MTFB: O(Years)

31

Wednesday, June 30, 2010

Page 51: Google App Engine for Business - Sydney Devfest

Distributed Meme:Tolerate, expect and design for failure

MTFB: O(Months)

MTFB: O(Years)

31

Wednesday, June 30, 2010

Page 52: Google App Engine for Business - Sydney Devfest

Distributed Meme:Tolerate, expect and design for failure

MTFB: O(Months)

MTFB: O(Years)

MTFB: O(Minutes/Seconds)

31

Wednesday, June 30, 2010

Page 53: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 54: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 55: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 56: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 57: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 58: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 59: Google App Engine for Business - Sydney Devfest

Distributed ComputingAnti-Pattern: Batch processing

32

Wednesday, June 30, 2010

Page 60: Google App Engine for Business - Sydney Devfest

Distributed Meme:Divide and Conquer

33

Wednesday, June 30, 2010

Page 61: Google App Engine for Business - Sydney Devfest

Distributed Meme:Divide and Conquer

X33

Wednesday, June 30, 2010

Page 62: Google App Engine for Business - Sydney Devfest

Distributed Meme:Divide and Conquer

XRetry

33

Wednesday, June 30, 2010

Page 63: Google App Engine for Business - Sydney Devfest

Vertical scalability

34

Wednesday, June 30, 2010

Page 64: Google App Engine for Business - Sydney Devfest

Vertical scalability

34

Wednesday, June 30, 2010

Page 65: Google App Engine for Business - Sydney Devfest

Vertical scalability

34

Wednesday, June 30, 2010

Page 66: Google App Engine for Business - Sydney Devfest

Vertical scalability

34

Wednesday, June 30, 2010

Page 67: Google App Engine for Business - Sydney Devfest

Horizontal Scalability

Vertical scalability

34

Wednesday, June 30, 2010

Page 68: Google App Engine for Business - Sydney Devfest

Horizontal Scalability

Vertical scalability

34

Wednesday, June 30, 2010

Page 69: Google App Engine for Business - Sydney Devfest

Horizontal Scalability

Just scale it up

Vertical scalability

34

Wednesday, June 30, 2010

Page 70: Google App Engine for Business - Sydney Devfest

Vertical scalability

35

Wednesday, June 30, 2010

Page 71: Google App Engine for Business - Sydney Devfest

Vertical scalability

Horizontal scalability

Tolerate small failures35

Wednesday, June 30, 2010

Page 72: Google App Engine for Business - Sydney Devfest

Vertical scalability

Horizontal scalability

Tolerate small failures35

Wednesday, June 30, 2010

Page 73: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 74: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 75: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 76: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 77: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 78: Google App Engine for Business - Sydney Devfest

Tolerate, expect and plan for small rate of failures

Wednesday, June 30, 2010

Page 79: Google App Engine for Business - Sydney Devfest

Distributed web hosting platform

Great for enterprise web apps•Request based, data backed

Parallel processingScales automaticallyAvailable globallyConfiguration freeBuilt-in DoS protections

37

Wednesday, June 30, 2010

Page 80: Google App Engine for Business - Sydney Devfest

Distributed datastore

Arbitrary horizontal scalingParallel processingScales to 'Internet scale'Predictable query performance•Independent of number of entities

No deadlocksNo global schema

38

Wednesday, June 30, 2010

Page 81: Google App Engine for Business - Sydney Devfest

Distributed Meme: Divide & ConquerSpecialized services

BlobstoreImages

Mail XMPP Task Queue

Memcache Datastore URL Fetch

User Service

39

Wednesday, June 30, 2010

Page 82: Google App Engine for Business - Sydney Devfest

Wrap up

40

Wednesday, June 30, 2010

Page 83: Google App Engine for Business - Sydney Devfest

Two years in review

41

Apr 2008 Python launchMay 2008 Memcache, Images APIJul 2008 Logs exportAug 2008 Batch write/deleteOct 2008 HTTPS supportDec 2008 Status dashboard, quota detailsFeb 2009 Billing, larger filesApr 2009 Java launch, DB import, cron support, SDCMay 2009 Key-only queriesJun 2009 Task queuesAug 2009 Kindless queriesSep 2009 XMPPOct 2009 Incoming emailDec 2009 BlobstoreFeb 2010 Datastore cursors, AppstatsMar 2010 Read policies, IPv6May 2010 App Engine for Business

Wednesday, June 30, 2010

Page 84: Google App Engine for Business - Sydney Devfest

An evolving platform

42

Wednesday, June 30, 2010

Page 85: Google App Engine for Business - Sydney Devfest

App Engine Roadmap

43

SSL for your domainBackground servers

Reserved instances

Control datastore availability vs. latency trade-offs

Mapping operations across datasetsDatastore dump and restore facility

Raise request/response size limits for some APIs

Improved monitoring/alerting

Channel APIBuilt-in support for OAuth & OpenID

Wednesday, June 30, 2010

Page 86: Google App Engine for Business - Sydney Devfest

Acknowledgement

Thanks to many member of the App Engine team for their slides, especially Fred Sauer and Chris Schalk

44

Wednesday, June 30, 2010

Page 87: Google App Engine for Business - Sydney Devfest

Thank you

Read morehttp://code.google.com/appengine/

Contact infoPatrick ChanezonDeveloper [email protected]://twitter.com/chanezon

Questions?

45

Wednesday, June 30, 2010