homecloud computingcloud data Processingcloud of thingsclound of networks
cloud computing

Course CLD106 - Building Cloud Computing Applications Using Amazon Web Services (AWS)

Duration: 5 Days

Course Background

The Google App Engine provides access not only to a large system of servers and a powerful Java / Python API, but , also, to a network and community of fellow enthusiasts. The Google App Engine framework contains the expected cloud computing components

  • Server architecture
  • Runtime environments
  • Scalable datastore
It provides an effective entry into cloud computing for small to medium sized companies and organisations. This coupled with the very large number of Python packages that cover everything from scientific computing through to data mining and computer game programming should provide more than ample scope for creative invention of a wide variety of services.

Course Prerequisites and Target Audience

This 5 day course is aimed at programmers who already have a basic knowledge of programming and web application development (i.e. HTML, CSS, JavaScript). Its goal is to teach attendees how to develop Cloud computing applications, and to develop skills for implementing scalable services using the Google App Engine. The course covers

  • The differences between traditional web development and development with App Engine
  • Details of how the App Engine handles web requests and executes application code
  • Techniques for using the App Engine’s scalable datastore - queries, indexes, transactions, and data modeling
  • The use of task queues to parallelize and distribute work across the cloud infrastructure
  • The management and deployment of applications
  • The course can be taught on Linux, Windows or MacOSX platforms.
Unlike Azure cloud computing development which involves a steep learning curve, this course aims to provide a much gentler introduction to those wishing to learn how to develop complex, cloud computing based web sites.

Course Outline

  • History and background to the Google App Engine
  • Advantages of working with the Python Google App Engine API
  • Installing the Google App Engine
  • Intensive Review of basic Web and Python programming techniques
  • HTML and CSS
    • Well formed HTML documents
    • XHTML and HTML5
    • CSS2 and CSS3
  • HTTP (Hypertext Transport Protocol)
    • Forms
    • POST
    • GET
    • App Engine Log and troubleshooting
    • Multipart POSTs
  • Basic object-oriented programming in Python
  • Web applications and Python Objects - App Engine webapp framework
    • Structure of a webapp application
    • Handler callbacks and the handler callback pattern
    • Troubleshooting and web server logs
  • Templates
    • Understanding template syntax
    • Accessing templates from Python
    • Templates and the Model-View-Controller (MVC) pattern
    • Multiscreen applications
    • Static files in the App Engine
    • Extending base templates
    • Conditional processing and templates
  • Security and Session Management
    • Basic login application
    • Cookies and session management
    • Session implementation
  • Data services, data persistence and data access
    • Google App Engine Data Store and its API
    • Key types
    • References between data models
  • Using Java Script, jQuery and Ajax in Google App Engine applications
    • Intensive overview of Java Script
    • Intensive overview of XML and DOM
    • Intensive overview of jQuery
    • Intensive overview of Ajax
    • Techniques
      • Asynchronously updating a div using Ajax
      • Using DOM and XML in Google App applications
  • Deploying a Google App Engine application
    • Application Engine Accounts
    • Logs, statistics and all that
  • Tuning and Memory Cacheing
    • Overview of the memory cache and rules for working with it
    • Memory cache usage
    • Session stores using memory cache
    • Sessions and memory cache