windows a zure, как универсальный масштабируемый бэкэнд ...

Post on 01-Jan-2016

58 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Windows A zure, как универсальный масштабируемый бэкэнд для мобильных приложений. Стас Павлов Microsoft. облака. Предпосылки появления. Рост нагрузки на частные дата-центры Увеличение количества пользователей Распространение мобильных решений Одновременная совместная работа - PowerPoint PPT Presentation

TRANSCRIPT

Windows Azure, как универсальный масштабируемый бэкэнд для мобильных приложений

Стас ПавловMicrosoft

облака

Предпосылки появления

Рост нагрузки на частные дата-центры Увеличение количества пользователей Распространение мобильных решений Одновременная совместная работа Повышение ожиданий от приложений Непредсказуемые пики нагрузки

Высокие расходы на дата-центы Ресурсы: электричество, охлаждение, сети, персонал Проблемы масштабирования: большие первоначальные инвестиции,

необходимость платить «деньги вперед» за непредсказуемую нагрузку

Что могут дать разработчику?

Масштабирование системы по необходимости Высокая доступность и отказоустойчивость Эффективное управление расходами Возможность фокусироваться на создании и обслуживании

продукта, а не на инфраструктуры Быстрая публикация решений любого масштаба

Оптимальные нагрузочные сценарии

использование

Вы

чи

сл

. м

ощ

н

Время

Среднее

Период

неактивности

“Пакетная обработка “

Пакетная обработкаЛишняя мощность просто теряется Сложно быстро выйти на рынок

Время

“Пиковая нагрузка“

Среднее использование

Непредвиденный/незапланированный пикПадает производительностьНевозможно «запасти» производительность

Среднее использование

Время

“Быстрый рост“

Успешным сервисам надо расти Поддерживать рост – вызов для ИТ служб Сложное и долгое развертывание

Время

Среднее использование

“Предсказуемый всплеск“

Сезонные сервисыПериодическое увеличение запросовСложность ИТ и «лишняя» мощность

Вы

чи

сл

. м

ощ

н

Вы

чи

сл

. м

ощ

н

Вы

чи

сл

. м

ощ

н

Windows Azure

Платформа Windows Azure

Windows Azure SQL AzureWindows Azure

AppFabric

Средства разработки Средства управления

Azure Fabric/Fabric Controller

Windows Azure Windows Azure Platform – окружение, управляющее облаком и

набор сервисов (.NET, identity, storage). Набор виртуальных машин (web role, worker role)

SQL Azure – распределенная реляционная база данных Table Service – не-реляционное хранилище сущностей (1 Мб, (255 –

3) свойства у каждой сущности) Blob Service – хранилище двоичных данных, может быть

подключено как общий сетевой диск (1 Тб в page blob, 200 Гб в block blob)

Queues – квази-транзакционная очередь (8Кб сообщение)

Windows Azure AppFabric Service Bus - связь между распределенными приложениями на

основе сообщений Access Control – управление доступом Distributed Caching – распределенный кэш в памяти

Хранение состояния Кеширование данных Одинаковая модель программирования для приложений,

размещаемых в облаке и частном дата-центре

масштабирование

Масштабирование

Web TierMobile Client

RequestB/L Tier Databa

seResponse

Масштабирование

Web Tier B/L Tier Database

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

“Server Busy”

Масштабирование

Web Tier B/L Tier Database

Mobile Client

“Timeout”

Mobile Client

Mobile Client

Mobile ClientMobile Client

Масштабирование

Web Tier

B/L Tier Database

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Tier

Web Tier

N L B

Масштабирование

Database

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Tier B/L Tier

B/L Tier

B/L Tier

N L B

Масштабирование

Database

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

B/L Tier

B/L Tier

B/L Tier

N L B

Web Tier

Web Tier

Web Tier

N L B

Масштабирование

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

B/L Tier

B/L Tier

B/L Tier

N L B

Database

p1 p2 p3

Web Tier

Web Tier

Web Tier

N L B

Масштабирование

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

B/L Tier

B/L Tier

B/L Tier

N L B

Database

p1 p2 p3

Web Tier

Web Tier

Web Tier

N L B

Дорого и много работы по внедрению

Масштабирование

Mobile Client

B/L Tier

B/L Tier

B/L Tier

N L B

Database

p1 p2 p3

Web Tier

Web Tier

Web Tier

N L B

А сейчас не так хорошо …

А теперь всё простаивает …Дорого и много работы по

внедрению

Масштабирование

Использование

Январь

Апрель

Июль Октябрь

Пиковая загрузка

Простой

Как поможет облако?

Масштабирование

Web Tier B/L Tier Database

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

“Server Busy”

Обновляем конфигурацию …

Масштабирование

Web Role

Worker Role

AzureStorag

e

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Role

Web Role

N L B

Прозрачно для

разработчика

Масштабирование

Web Role

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Role

Web Role

N L B

N L B

AzureStorag

e

Worker Role

Worker Role

Worker Role

О чём ещё нужно знать?

Масштабирование

Web Role

Mobile Client

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Role

Web Role

N L B

N L B

AzureStorag

e

Worker Role

Worker Role

Worker Role

Тесное связывание рабочей и

веб-ролей – анти-паттерн

Масштабирование

Web RoleWorker

Role

Queue

Req

1. Поставить в очередь 3. Взять из очереди

4. Обработать

2. Ответить

Масштабирование

Web RoleWorker

Role

Queue

Req

4. Обработка

Table

5. Добавить результатв таблицу

6. Проверить таблицуна наличие данных

А сколько веб и рабочих ролей надо?

Масштабирование

Web Role

Worker Role

AzureStorag

e

Mobile Client

Mobile Client

Mobile ClientMobile Client

Web Role

Web Role

N L B

Worker Role

Log

WMI_Win32_PerfFormattedData_ASPNET_ASPNETApplications/RequestsPerSecond

Management APIили Email

Mobile Client

Масштабирование

Web Role

Queue

Req

Web Role

Web Role

Req

Req

Мониторинг длины очередиWeb Role

Web Role

Web Role

Worker Role

Масштабирование

Web Role

Queue

Req

Web Role

Web Role

Req

Req

Мониторинг длины очередиWeb Role

Web Role

Web Role

Worker Role

Worker Role

Worker Role

Worker Role

Worker Role

Worker Role

Масштабирование Быстрое масштабирование с использование конфигурации и/или

API Проработка сценариев взаимодействия веб и рабочих ролей Разработка стратегии масштабирования приложения

Демо

работа с порталом управления Windows Azure

Демо

простое приложение дляWindows Azure

Windows AzureDevices Toolkits

Windows Azure Toolkits for Devices

для Windows Phone для iOS для Android

Windows Azure Toolkit for Windows Phone

Сервисы и прокси

Доступ к SQL Azure

Push Notification

Аутентификация c Access Control Services

Аутентификация с ASP.NET

Windows Azure Toolkit for Android

Windows Azure Toolkit for Android

https://github.com/microsoft-dpe/wa-toolkit-android может использовать ту же самую серверную часть,

предоставляющую сервисы и прокси, либо доступ напрямую реализована работа с хранилищем и

аутентификация/авторизация примеры приложений Unit тесты

Windows Azure Toolkit for iOS

Windows Azure Toolkit for iOS

https://github.com/microsoft-dpe/wa-toolkit-ios может использовать ту же самую серверную часть,

предоставляющую сервисы и прокси, либо доступ напрямую реализована работа с хранилищем и

аутентификация/авторизация примеры приложений

расскажите о себе

51

вечерняя школа

Вечерняя школа Windows Phone Когда?

8, 15, 22 декабря – 2 раза в день в онлайне c 10:00 до 11:00 MSK с 17:00 до 18:00 MSK

27 декабря в 19:30 в офлайн в Москве Где?

вебкасты офлайн встреча в Москве

Как попасть? регистрируйтесь http://aka.ms/ruwpschool

Что нужно? ноутбук с установленными средствами разработки Windows Phone SDK 7.1 (и вашей

программой) скачать с сайта http://create.msdn.com

Что будет? короткая презентация с демонстрациями по одной из тем разработки обсуждение ваших технических вопросов, а также идей по созданию приложений и

процедуре публикации телефоны для тестирования приложений (офлайн занятие)

ресурсы

С чего начать

http://create.msdn.com http://go.microsoft.com/?linkid=9772716

http://msdn.microsoft.com/ru-ru/windowsphone/

http://www.techdays.ru/?Tag=Windows Phone 7 http://windowsteamblog.com/windows_phone/ http://aka.ms/ruwp7dev - презентация и примеры

спасибо

© 2011 Microsoft Corporation.

All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

top related