Google App Engine Ying Zou 01/24/2016.

Slides:



Advertisements
Similar presentations
Web Toolkit Julie George & Ronald Lopez 1. Requirements  Java SDK version 1.5 or later  Apache Ant is also necessary to run command line arguments 
Advertisements

Google App Engine Cloud B. Ramamurthy 7/11/2014CSE651, B. Ramamurthy1.
 Java  Python  Bigtable(Bt) is a distributed storage system for managing structured data that is designed to scale to a very large size.  Query Language.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Understanding and Managing WebSphere V5
Creating a Hello App Using Google App Engine. What are Google apps? Apps is an abbreviation for application. An app is a piece of software. It can run.
Platform as a Service (PaaS)
Google AppEngine. Google App Engine enables you to build and host web apps on the same systems that power Google applications. App Engine offers fast.
Google App Engine Google APIs OAuth Facebook Graph API
Amazon EC2 Quick Start adapted from EC2_GetStarted.html.
SENG 422 Lab 4 Cloud Computing Time: ELW B220 from (4:00 - 6:50) every Tuesday TA: Philip Baback Alipour Ph.D. Candidate in Electrical, Computer Engineering.
Google App Engine Danail Alexiev Technical Trainer SoftAcad.bg.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Prof. A.R. Rele. What Is Google App Engine? Google App Engine lets users run web applications on Google's infrastructure. App Engine applications are.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
By Mihir Joshi Nikhil Dixit Limaye Pallavi Bhide Payal Godse.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Lecture 8 – Platform as a Service. Introduction We have discussed the SPI model of Cloud Computing – IaaS – PaaS – SaaS.
Google App Engine Chien-Chung Shen
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Cloud Operating System Unit 11 Sever Technology II M. C. Chiang Department of Computer Science and Engineering National Sun Yat-sen University Kaohsiung,
Google App Engine(GAE) Ma, Zhichao Cloud.
VENUE: AFE BABALOLA HALL, UNIVERSITY OF LAGOS PRESENTATION BY: MR AMOS EMMANUEL CHIEF SOFTWARE ARCHITECT, PROGRAMOS SOFTWARE CHAIRMAN,
Meet with the AppEngine Márk Gergely eu.edge. What is AppEngine? It’s a tool, that lets you run your web applications on Google's infrastructure. –Google's.
Standalone Java Application vs. Java Web Application
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Designing Web Applications Thaddeus Diamond CPSC 112.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Paperless Timesheet Management Project Anant Pednekar.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Introduction and Principles Web Server Scripting.
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
Lecture IV: REST Web Service with Google App Engine CS 4593 Cloud-Oriented Big Data and Software Engineering.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
Document Name CONFIDENTIAL Version Control Version No.DateType of ChangesOwner/ Author Date of Review/Expiry The information contained in this document.
Google App Engine. Contents Overview Getting Started Databases Inter-app Communications Modes.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Platform as a Service (PaaS)
Applications Active Web Documents Active Web Documents.
Deploying Web Application
Platform as a Service (PaaS)
Platform as a Service (PaaS)
Netscape Application Server
Google App Engine Mandeep Singh (37926)
Google Web Toolkit Tutorial
Java Servlets By: Tejashri Udavant..
Spark Presentation.
Platform as a Service.
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
Lecture 1 Runtime environments.
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
Introduction to J2EE Architecture
Knowledge Byte In this section, you will learn about:
PHP / MySQL Introduction
OpenNebula Offers an Enterprise-Ready, Fully Open Management Solution for Private and Public Clouds – Try It Easily with an Azure Marketplace Sandbox MICROSOFT.
Google App Engine B. Ramamurthy Based on the material available at
Designed for Big Data Visual Analytics, Zoomdata Allows Business Users to Quickly Connect, Stream, and Visualize Data in the Microsoft Azure Platform MICROSOFT.
Google App Engine Danail Alexiev
The Application Lifecycle
Partner Logo Azure Provides a Secure, Scalable Platform for ScheduleMe, an App That Enables Easy Meeting Scheduling with People Outside of Your Company.
AWS Cloud Computing Masaki.
Objectives In this lesson you will learn about: Need for servlets
Architecture of the web
Agenda Need of Cloud Computing What is Cloud Computing
Web Application Development Using PHP
Presentation transcript:

Google App Engine Ying Zou 01/24/2016

Contents Overview Getting Started Databases Inter-app Communications Modes

Contents Overview Getting Started Databases Inter-app Communications Modes

Overview What is Google App Engine? - A platform as a Service (PaaS) offering that lets you build and run applications on Google’s infrastructure. Easy to build, easy to maintain, easy to scale. No server for you to maintain. Upload your application and it’s ready to go. A powerful platform to build web and mobile apps that scales automatically.

Overview Features User Authentication Popular Languages NoSQL Datastore Google Cloud SQL Memcache Security Scanner Search Traffic Splitting Logging Task Queues User Authentication: Allows applications to sign in users with Google Accounts or OpenID, and address these users with unique identifiers. Popular Languages: Build your application in Java, Python, PHP or Go. NoSQL Datastore: A schemaless object datastore, with scalable storage, a rich data modeling API, and an SQL-like query language. Google Cloud SQL: A fully-managed web service that allows you to create, configure, and use relational databases that live in Google's cloud. Memcache: A distributed, in-memory data cache that can be used to greatly improve application performance. Security Scanner: Security Scanner automatically scans and detects common web application security vulnerabilities, such as mixed content and XSS. Search: Perform Google-like searches over structured data such as plain text, HTML, atom, numbers, dates, and geographic locations. Traffic Splitting: Route incoming requests to different app versions, run A/B tests and do incremental feature rollouts. Logging: Programmatic access to application and request logs from within your app. Task Queues: Apps can perform work outside of user requests, using small, discrete tasks that are executed later.

Overview It supports: Java Python PHP Go Runtime: Java 7 JVM WSGI-compatible web app framework. PHP 5.4 environment Go 1.4 Google App Engine supports apps written in a variety of programming languages. Java: Using App Engine’s Java runtime environment, you can build your application using standard Java technologies. Python: App Engine features a fast Python interpreter and standard Python libraries. PHP: App Engine uses Google's Cloud Platform services under the hood when you call standard PHP functions. Go: App Engine features a Go runtime environment that runs natively compiled Go code. Java RuntimeApp Engine runs your Java web application using a Java 7 JVM in a safe sandboxed environment. App Engine invokes your app's servlet classes to handle requests and prepare responses in this environment. App Engine uses the Java Servlet standard for web applications. You provide your app's servlet classes, JavaServer Pages (JSPs), static files and data files, along with the deployment descriptor (the web.xml file) and other configuration files, in a standard WAR directory structure. App Engine serves requests by invoking servlets according to the deployment descriptor. The secured sandbox environment isolates your application for service and security. It ensures that apps can only perform actions that do not interfere with the performance and scalability of other apps. For instance, an app cannot spawn threads in some ways, write data to the local file system or make arbitrary network connections. An app also cannot use JNI or other native code. The JVM can execute any Java bytecode that operates within the sandbox restrictions. The Google Plugin for Eclipse adds new project wizards and debug configurations to your Eclipse IDE for App Engine projects. App Engine for Java makes it especially easy to develop and deploy world-class web applications using Google Web Toolkit (GWT). The Eclipse plugin comes bundled with the App Engine and GWT SDKs. Third-party plugins are available for NetBeans and IntelliJ. Java Developers Guide   [Back to top] Python RuntimeApp Engine executes your Python application code using a pre-loaded Python interpreter in a safe sandboxed environment. Your app receives web requests, performs work, and sends responses by interacting with this environment. A Python web app interacts with the App Engine web server using the WSGI protocol, so apps can use any WSGI-compatible web application framework. App Engine includes a simple web application framework, called webapp2, to make it easy to get started. For larger applications, mature third-party frameworks, such as Django, work well with App Engine. The Python interpreter can run any Python code, including Python modules you include with your application, as well as the Python standard library. The interpreter cannot load Python modules with C code; it is a "pure" Python environment. The secured sandbox environment isolates your application for service and security. It ensures that apps can only perform actions that do not interfere with the performance and scalability of other apps. For instance, an app cannot write data to the local file system or make arbitrary network connections. Instead, apps use scalable services provided by App Engine to store data and communicate over the Internet. The Python interpreter raises an exception when an app attempts to import a module from the standard library known to not work within the sandbox restrictions. Python Developers Guide  [Back to top] PHP RuntimeThe PHP runtime executes your application code in a sandboxed PHP 5.4 environment. Your app receives web requests, performs work, and sends responses by interacting with this environment. The runtime supports many of the standard PHP extensions. You cannot upload extensions written in C. App Engine runs its own web server, which can be configured using an app.yaml file that's uploaded with your code. This file specifies how incoming HTTP requests to your application are directed to PHP scripts. The sandbox isolates your application for reliability, scalability and security. For this reason, a small number of PHP functions are not available on App Engine, and others will raise an exception if used incorrectly. For instance, an app cannot write data to the local file system. Instead, apps can use scalable services provided by Google to store and process data and communicate over the Internet. The PHP runtime provides a built-in Google Cloud Storage stream wrapper that allows you to use many of the standard PHP filesystem functions to access Google Cloud Storage. PHP Developers Guide  [Back to top] Go RuntimeApp Engine runs Go version 1.4. The SDK provides an interface similar to the standard Go http package; writing Go App Engine apps is akin to writing stand-alone Go web servers. The SDK includes the Go compiler and standard library; it has no additional dependencies. Because the Go runtime executes in a sandboxed environment, some of the standard library functions will return errors and should not be used. For example, an os.ErrPermission will occur if an app tries to write to the local file system or make arbitrary network connections. You must use App Engine's scalable services to store data and communicate over the Internet. You never need to invoke the Go compiler yourself. Your app is automatically re-built on the server side whenever you upload new code, and if you are running the local development server the SDK automatically recompiles sources on-the-fly when you change them. The Go runtime environment for App Engine supports goroutines, but they are scheduled on a single thread. Goroutines can run concurrently but not in parallel. An application instance can handle multiple requests. For example, if one request is waiting for a datastore API call, the instance can process another request in the meantime.

Overview APP Engine Development Environment SDKs includes: All of the APIs and libraries available to App Engine A simulated, secure sandbox environment that emulates all of the App Engine Services on your local machine. Deployment tools that allow you to upload your application to the cloud and manage different versions of your application. The SDK manages your application locally, while the Google Cloud Platform Console manages your application in production. The Cloud Platform Console uses a web-based interface to create new applications, configure domain names, change which version of your application is live, examine access and error logs, and much more.

Contents Overview Getting Started Databases Inter-app Communications Modes

Getting Started Download the SDK. Sign up for an account Read the getting started information. Check out the App Engine Documentation.

Contents Overview Getting Started Databases Inter-app Communications Modes

Databases Google App Engine’s data storage is not based on Rational Database Management System but Bigtable. Useful Link

Contents Overview Getting Started Databases Inter-app Communications Modes

Inter-app Communication Modes Modes can share by using Datastore & Memcache. Collaborate using Task Queues. Module API provides functions to retrieve the address of a module, a version, or an instance.