App EngineCloud Computing платформа от Google

Содержание

Слайд 2

Cloud Computing

Cloud computing – технологический тренд, суть которого состоит в переносе программного

Cloud Computing Cloud computing – технологический тренд, суть которого состоит в переносе
обеспечения для личного и корпоративного пользования в интернет. Он объединяет такие концепции как software as a service, infrastructure as a service и platform as a service.

Слайд 3

Cloud Computing

Cloud Computing

Слайд 4

Cloud Computing

Cloud Computing

Слайд 5

Мотивация

Создавать масштабируемые веб-приложения тяжело. Особенно для небольших групп разработчиков.
- Типичный LAMP-стек

Мотивация Создавать масштабируемые веб-приложения тяжело. Особенно для небольших групп разработчиков. - Типичный
требует нетривиальной конфигурации и последующего администрирования.
- LAMP-приложения требуют дополнительной инфраструктуры для решения таких проблем как балансировка, репликация данных и мониторинг.
- Такие приложения тяжело масштабировать. Нередко приходится менять архитектуру приложения с ростом нагрузки.
Все эти проблемы решаются снова и снова.

Слайд 6

Мотивация
У Google тоже имеется богатый опыт создания масштабируемых приложений. Наши приложения используют

Мотивация У Google тоже имеется богатый опыт создания масштабируемых приложений. Наши приложения
миллионы пользователей по всему миру.
Мы потратили много сил для создания удобной и надежной инфраструктуры для разработки веб-приложений.
Google App Engine это платформа которая позволяет использовать нашу инфраструктуру для создания и хостинга своих приложений.

Слайд 7

App Engine Cloud Computing платформа от Google
Платформа отвечает за автоматическую масштабируемость и балансировку

App Engine Cloud Computing платформа от Google Платформа отвечает за автоматическую масштабируемость
нагрузки
Платформа предоставляет динамический веб-сервер с поддержкой многих распространенных веб-технологий
Хранилище данных на основе Big Table
Простая интеграция с аккаунтами Google через API.

Слайд 8

Как работает App Engine

Node 1

Node 2

Node 3

Node N

Google
Cluster1

Node 1

Node 2

Node 3

Node

Как работает App Engine Node 1 Node 2 Node 3 Node N
N

Google
Cluster N

Node 1

Node 2

Node 3

Node N

Datastore
Cluster1

Node 1

Node 2

Node 3

Node N

Datastore
Cluster M

Python web server

Persistent Layer

HTTP Request

HTTP Response

Слайд 9

Разработка приложений с помощью App Engine 

App Engine SDK
Веб-сервер
dev_appserver.py 
Утилита для загрузки приложений
appcfg.py 
Локальная

Разработка приложений с помощью App Engine App Engine SDK Веб-сервер dev_appserver.py Утилита
реальзация DataStore
App Engine APIs

Слайд 10

Разработка приложений с помощью AppEngine

Разработка приложений с помощью AppEngine

Слайд 11

Конфигурация приложения - app.yaml

 
application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: /.* script: helloworld.py

yaml (yet

Конфигурация приложения - app.yaml application: helloworld version: 1 runtime: python api_version: 1
another markup language) - Deployment Descriptor for the Application
Maps URLs to the handlers

Слайд 12

URL

Python Handlers

/*.html

HtmlHandler

/*.form

FormHandler

app.yaml (deployment descriptor)

WebApp Framework
(Google’s Web framework)

Django Framework
(Third Party)

WebOb Framework
(Third Party)

Mail APIs

Users

URL Python Handlers /*.html HtmlHandler /*.form FormHandler app.yaml (deployment descriptor) WebApp Framework
APIs

MemCache API

Data
Store APIs

Python Runtime

Runtime-компоненты приложения, развернутого на App Engine

Слайд 13

Request Handler - helloworld.py

Request Handler - helloworld.py

Слайд 14

App Engine DataStore

Мощное не реляционное распределенное хранилище данных
Поддержка SQL-образного языка

App Engine DataStore Мощное не реляционное распределенное хранилище данных Поддержка SQL-образного языка GQL DataStore API
GQL
DataStore API

Слайд 15

Объекты и их свойства

В хранилище данных хранятся сущности (Entities)
У каждой сущности есть

Объекты и их свойства В хранилище данных хранятся сущности (Entities) У каждой
набор свойств, заданного типа (например User, IM, Link, Rating, GeoPt, PhoneNumber и тд)
Сущности имеют Возможность ссылаться на другие сущности (many to one relationships)

Entity

Properties

has

Слайд 16

Ключи

У каждой сущности (Entity) есть ключ, являющийся ее уникальным идентификатором
Ключ состоит

Ключи У каждой сущности (Entity) есть ключ, являющийся ее уникальным идентификатором Ключ
из трех частей (1) типа сущности, (2) пути определяющего его положение относительно предка и (3) уникального имя или числового идентификатора.

Слайд 17

Группы сущностей

Root Entity

Группы сущностей хрянятся в одном узле распределенного хранилища
Группа

Группы сущностей Root Entity Группы сущностей хрянятся в одном узле распределенного хранилища
сущностей определяет рамки одной транзакции

Слайд 18

DataStore - Runtime компоненты

DataStore - Runtime компоненты

Слайд 19

App Engine DataStore

Entity
from db.Model

Persisting
An
Entity

App Engine DataStore Entity from db.Model Persisting An Entity

Слайд 21

Обработка запроса к App Engine

Обработка запроса к App Engine

Слайд 22

Тестирование и развертывание сервиса на App Engine

Локальное тестирование
dev_appserver.py helloworld/
Развертывание
appcfg.py update helloworld/
Приложение «в

Тестирование и развертывание сервиса на App Engine Локальное тестирование dev_appserver.py helloworld/ Развертывание
облаке»
 http://.appspot.com

Слайд 23

Некоторые API для AppEngine

Некоторые API для AppEngine

Слайд 24

Обеспечение безопасности: Sandbox

Обеспечение безопасности: Sandbox
Имя файла: App-EngineCloud-Computing-платформа-от-Google.pptx
Количество просмотров: 152
Количество скачиваний: 0