google app engine: an introduction

23
Abu Ashraf Masnun

Upload: abu-ashraf-masnun

Post on 28-Jan-2015

106 views

Category:

Technology


2 download

DESCRIPTION

My session from GDG DevFest 2013

TRANSCRIPT

Page 1: Google App Engine: An Introduction

Abu Ashraf Masnun

Page 2: Google App Engine: An Introduction

� Distributed computing over a network enabling real time communication and resource sharing. � Infrastructure (VMs, Servers, Storage, Load Balancer) �  Platform (Web Server, Database, Execution run time) �  Software (CRM, Email, Online Games)

Cloud Computing

Page 3: Google App Engine: An Introduction

� � IaaS – Google Compute Engine (https://cloud.google.com/products/compute-engine) � PaaS – Google App Engine (https://cloud.google.com/products/app-engine)

� SaaS – Google Apps (http://www.google.com/enterprise/apps/business/)

Google on the Cloud

Page 4: Google App Engine: An Introduction

� � Platform that is built on top of Google’s

infrastructure � Allows hosting web applications (and workers) � Run at Google’s Scale � Forget –

� Hardware failures � OS upgrades �  Security patches � Nightmares (may be?!)

Google App Engine

Page 5: Google App Engine: An Introduction

� Ooops!

Trust me, this is very rare!

Page 6: Google App Engine: An Introduction

� �  JVM

�  Scala, Groovy, Jruby, Jython �  Servlets & JSPs

�  GWT �  JSF �  Struts �  Wicket

� Python �  Built in framework �  Django

� Go � PHP

Runtime

Page 7: Google App Engine: An Introduction

� � Google Accounts � Caching � Background Tasks � XMPP � Memcache � Image manipulation � Channel APIs (Push, Comet) � URL Fetching � Sending/Receiving email

APIs

Page 8: Google App Engine: An Introduction

� � 10 applications per developer account � Code and Static Data Storage – 1GB � Stored Data – 1GB, 200 indexes max � 50000 Read and 50000 Write operations per day � 1 GB outgoing and 1GB incoming bandwidth daily

(Read more yourself - https://developers.google.com/appengine/docs/quotas?hl=en-EN )

Your free lunch!

Page 9: Google App Engine: An Introduction

� For the business Gurus!

The reason why I've been invited to write this guest blog post is because the site was built on Google App Engine and, according to Google Analytics, it served about 3.4 million pageviews (1 million unique visitors) in the 12 days it was live. It grossed over $1.2 million. Depending on who you ask, this is quite a lot of traffic, and we exceeded the free App Engine quota. Google sent us a bill for a grand total of $71.56. -- Jeffrey Rossen, Wolfire Games

Ref: http://googleappengine.blogspot.com/2010/06/how-app-engine-served-humble-indie.html

Case of The Humble Indie Bundle

Page 10: Google App Engine: An Introduction

� � Tasks instead of native threads � No sockets � No native code � No write access to the system (Use Blob Store) � Limited access to libraries � 30 sec execution deadline

Technical Limitation

Page 11: Google App Engine: An Introduction

LIVE DEMOS

Download materials: https://github.com/masnun/gdg-devfest-2013

Not so

Page 12: Google App Engine: An Introduction

Python SDK

Page 13: Google App Engine: An Introduction
Page 14: Google App Engine: An Introduction
Page 15: Google App Engine: An Introduction
Page 16: Google App Engine: An Introduction

PHP SDK

Page 17: Google App Engine: An Introduction
Page 18: Google App Engine: An Introduction
Page 19: Google App Engine: An Introduction
Page 20: Google App Engine: An Introduction
Page 21: Google App Engine: An Introduction
Page 22: Google App Engine: An Introduction

� � Twitter: @masnun � Blog: http://masnun.com � Email: [email protected]

How to reach me?

Python Developers’ Group: http://pycharmers.net Go Developers’ Group: http://go-fans.net

Page 23: Google App Engine: An Introduction

Q&A