3. Agenda in this session
What is Google App-Engine (GAE)?
GAE Envrionment
Why GAE?
How to calculate GAE cost ?
GAE core services
How GAE App works?
GAE Best Prastice
Summary
4. What is Google App-Engine (GAE)?
Platform as a Service (Paas)
Allow you build web-app run on Google's infrastructure
Make your development easy, simple, and scale
You are in control with nice dashboard
It's not just a hosting service: App Engine empowers you to design
your app in Googly way!
6. GAE Environment : cont.
Warning:
The App Engine SDK no longer supports Java 6. Applications that use
Java 6 need to be migrated to Java 7. Existing applications that use the
Java 6 runtime are still supported, but this support will be removed in a
future release.
The PHP runtime is available as an experimental Preview feature. Please
be aware that the APIs and service may change before the service
becomes Generally Available.
Experimental
Ref: https://developers.google.com/appengine/docs/whatisgoogleappengine
7. Why GAE ?
Fast bootstrap
Small opeartion
Reliability
Scalability
More ….
Help avoid commons isssues
with file system,
threading, and timeout request.
Interesting with new Technology ?
8. Why GAE : Runtime ?
Helps avoid common pitfalls : file system, time outs
and threading !
9. Why GAE : Operation ?
Easy to maintenance,
Managing , Monitoring !
All in once place !
14. How to calculate GAE Cost ?
- No cost setup and installation
- Cost free to get started with limited resources (Mem,CPU, requests)
- ONLY pay when consuming
1 - type of service
2 - system design
3 - quality of usage
4 - supporting service
16. How GAE App works?
Tranditional App Server Structure
What if you have:
○ Hardware failures, Traffic Spike, Growing Big Data, No initial fund to
buy all the hardware, No one to design, implement and operate this
complex thing...
18. GAE Best Prasticse
Design Non-relational data model by Datastore/Bigtable:
- Denormalization : optimize the read performance :
duplicate properties between entities to avoid an extra read, always use queries
that run a list of results, never request single result on a loop
-Use pagination through larget dataset : Use cursorKey rathen than offset and limit
- Use Sharded counter : getCount(),...
Memcache is your friend, use it in effective way!
For GAE Dev,
it's important to understand how things are working inside the App Engine
structureto get more benefits from these goals
19. Summary
A fantastic service for complex, high availability, scalable service for demanding customers need
-1 fast start-up projects: dev can make the app in a few hours
-2 easy deployment
-3 run-time will support and lead dev. into a good habits while development (esp. dealing
with resources - filesystem, request, thread)
-4 small operation team can manage a large number of service - All in one place
-5 Auto-scaling is nice and reliability as well