App Engine Cloud Computing платформа от Google Петр Чардин, Михаил Дайчик Апрель 2009.

Презентация:



Advertisements
Похожие презентации
Что такое Google App Engine Сервис хостинга сайтов и web-приложений в инфраструктуре Google. PaaS Оплата только ресурсов Простота использования, поддержки.
Advertisements

Денис Лунев Google App Engine. Облака Google App Engine Microsoft Azure Amazon WS Salesforce Rackspace.
Архитектура, возможности и методы использования платформы облачных вычислений Microsoft Windows Azure Лекция 2 Понятие об облачных вычислениях. Обзор платформ.
Кутуков В.А. ЗАО «Стек Софт» 7 октября 2011 Облачные вычисления в бизнесе.
ОБЛАЧНЫЕ ТЕХНОЛОГИИ КАК ИНСТРУМЕНТ ОРГАНИЗАЦИИ УЧЕБНОГО ПРОЦЕССА В РОССИЙСКИХ УЧРЕЖДЕНИЯХ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ Великоцкий Александр Сергеевич.
Кутуков В.А. ЗАО «Стек Софт» 23 ноября 2011 Развитие рынка SaaS решений в телекоме.
ПРАКТИЧЕСКИЙ ОПЫТ КОМПАНИИ ABBYY ПРИ ПОСТРОЕНИИ СЕРВИСА НА WINDOWS AZURE Руководитель группы веб- разработки Lingvo ABBYY Евгений Агафонов.
Подход к построению приложений, когда особенно важны масштабируемость и гибкость к текущим условиям вашего бизнеса.
ЧАСТНОЕ ОБЛАКО – СОЗДАНИЕ ДИНАМИЧЕСКОГО ДАТАЦЕНТРА Гайдар Магдануров, Microsoft e: | | p: +7 (905)
Google App Engine Алексей Сурков разработчик Google РИФ+КИБ 2010.
Учебный курс Технологии и средства разработки корпоративных систем Лекция 1 Открытые системы. Клиент и сервер Лекции читает кандидат технических наук,
9 класс--Облачные технологии. Облачные технологии (cloud computing) это технологии распределённой обработки данных в которой компьютерные ресурсы и мощности предоставляются.
Кутуков В.А. Облачные вычисления: ожидания и реалии.
АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков Требования 2 отказоустойчивость масштабируемость эффективностьприменимость расширяемость.
Мировые тренды. Реализация в Узбекистане Облачные вычисления.
Обзор продуктов и решений корпорации Oracle Ольга Горчинская Ведущий консультант Oracle Corporation
Администрирование информационных систем Лекция 4. Система управления базами данных.
Windows ® Azure Platform. 3 Время Вычислительные ресурсы Фактическая нагрузка Выделенные ресурсы Слишком много Недостаточно Прогноз нагрузки.
называют cloud computing одной из самых перспективных стратегических технологий прогнозируют перемещение в ближайшие пять лет большей части существующих.
Транксрипт:

App Engine Cloud Computing платформа от Google Петр Чардин, Михаил Дайчик Апрель 2009

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

Cloud Computing

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

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

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

Как работает App Engine Node 1 Node 2 Node 3 Node N Google Cluster1 Node 1 Node 2 Node 3 Node 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

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

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

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

URLPython Handlers /*.htmlHtmlHandler /*.formFormHandler app.yaml (deployment descriptor) WebApp Framework (Googles Web framework) Django Framework (Third Party) WebOb Framework (Third Party) Mail APIs Users APIs MemCache API Data Store APIs Python Runtime Runtime-компоненты приложения, развернутого на App Engine

Request Handler - helloworld.py

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

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

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

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

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

App Engine DataStore Entity from db.Model Persisting An Entity

GQL

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

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

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

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

Полезные ресурсы Документация и SDK: Список рассылки: