devcon school. advaced cloud scenarios
TRANSCRIPT
Современная мобильная
и веб-разработка
Расширенные сценарии использования облакаСтас Павлов
Технический евангелист, Microsoft
Mobile Devices Test CloudТестирование мобильных приложениях на 2000+ реальных устройств
Xamarin Test Cloud
2,000+ реальных устройств450 конфигураций
Скрипт тестовна C# или Ruby
Xamarin Test Recorder for Visual Studio
UI / легкость в использовании – Xamarin Test Cloud
Web Apps
MobileApps
APIManagement
APIApps
LogicApps
NotificationHubs
Content DeliveryNetwork (CDN)
MediaServices
HDInsight MachineLearning
StreamAnalytics
DataFactory
EventHubs
MobileEngagement
BiztalkServices
HybridConnections
ServiceBus
StorageQueues
Backup
StorSimple
SiteRecovery
Import/Export
SQLDatabase
DocumentDB
RedisCache
Search
Tables
SQL DataWarehouse
Azure AD Connect Health
AD PrivilegedIdentity Mngt
OperationalInsights
CloudServices
Batch Remote App
ServiceFabric Visual Studio
ApplicationInsights
Azure SDK
Team Project
ActiveDirectory
Multi-FactorAuthentication
Automation
Portal
Key Vault
Store /Marketplace
VM Image Gallery& VM Depot
БЕЗОПАСНОСТЬ И УПРАВЛЕНИЕ СЕРВИСЫ ПЛАТФОРМЫ
ГИБРИДНЫЕ ОПЕРАЦИИ
Компоненты Azure Storage
Tables
Структурированные
наборы данных,
NoSQL-хранилище
«ключ-значение»
Queues
Надежное
хранение и обмен
сообщениями
в рабочих процессах
Blobs
Файловые данные,
мультимедиа,
документы, любые
двоичные файлы
Files
Доступ к файлам
из VM по SMB 2.1,
перенос и работа
старых приложений,
надежность Storage
Azure CDNСеть распределенной доставки контента
Больше деталей на azure.com/cdn
Больше деталей на https://azure.microsoft.com/en-us/services/cognitive-services/
Новые возможности
Больше деталей на https://azure.microsoft.com/en-us/services/media-services/
Больше деталей на https://azure.microsoft.com/en-us/services/media-services/
Push-as-a-ServiceПлатформа централизованной рассылки пуш-уведомлений
Push-уведомления?
Привлечь внимание пользователя
Показать оповещение
Добавить бэдж на иконке iOS приложения
Обновить живую плитку на Windows
Почему настолько популярны?
Функционально богаты и разнообразны
1000 раз дешевле чем SMS
Увеличивают возврат пользователей на 50-100%,
10x эффективность по сравнению с email
Сложности push-уведомлений
Различия в PNS протоколах (HTTP vs. TCP, xml vs. JSON payload)
Различия в свойствах и возможностях (плитки vs. тосты vs. бэджи)
PNS работает с дескрипторами; уведомления нужно доставить пользователям/группам
Необходимо хранить ассоциации дескриптор/пользователь/группа
Одновременная рассылка миллионам пользователей без задержек
Уведомления получаемые пользователем должны соответсвовать временному поясу,
языку, личным предпочтениям
Azure Notification Hubs
Один раз
Клиент запрашивает дескриптор устройства у Platform Notification Service (PNS)
Бэкенд приложения регистрирует дескриптор в Notification Hub для пользователя/группы
Бэкенд приложения передает сообщение и группу/пользователя для Notification Hub
Notification Hub посылает сообщение и соответствующий дескриптор для PNS
APNs WNS
Notification Hub
App back-end
iOS app Windows Store
appGoogle app
Notification Hubs
✓ iOS / Android (GCM) / Windows 8.x/ Windows Phone 7.x & 8/Xamarin/PhoneGap
✓ Бэкенд приложения не беспокоится о различиях между протоколами PNS
✓ Организация дескрипторов устройств
✓ Сегментация: Notification Hub ассоциирует дескрипторы с тагами, представляющими логических пользователей или групп
✓ Броадкаст: посылка уведомления тэгу реализует одновременный броадкаст миллионам устройств в один вызов API.
✓ Персонализация: позволяет регистрировать шаблоны для каждого дескриптора, что позволяет трансформировать сообщения согласно временного пояса, языка и других личных предпочтений пользователя, не утруждая бэкенд приложения
✓ Аутентификация и доступ на основе ролей
✓ богатая диагностика
✓ мультитенантнасть и изоляция
Тэги
Тэги каждый дескриптор устройства может быть
зарегистрирован с одним или более тэгами
Тэги - простые строки, их не нужно заранее создавать
Пример: броадкаст группам по интересам послать уведомление всем пользователям
интересующимся футболом с помощью одного вызова API
Тэг выражения позволяют богатую сегментацию
Notification Hub
App back-end
Tag:”Beatles”Tag:”Wailers”
Tag:”Beatles”
Клиенты Azure Push Notifications
19
Новые возможности
Больше деталей на https://azure.microsoft.com/en-us/services/notification-hubs/
Application Analytics-as-a-ServiceСбор телеметрии с приложений, серверов, веб-страниц
Телеметрия для всестороннего обзора
платформа
инфраструктура
приложение
1
3
4
5
Мониторинг извне
Трассировка и события от кода
Поведение приложения
Производительность инфраструктуры
Пинг URL и веб-тесты из 8 глобальных точек
Все что разработчик пожелает отправить в Application Insights
Написание кода не требуется – запросы, время ответа, исключения, логи и т.д.
Системные счетчики производительности
2 Поведение пользователяКак приложение использовалось?
1. Сбор телеметрии
на каждом уровне:
мобильные приложения,
серверные приложения
и браузер
2. Телеметрия поступает в сервис
Azure Application Insights, где она
обрабатывается и сохраняется
3. Предоставление
всестороннего обзора
доступности,
производительности и
потребления приложений
Application
Insights
Azure Application Insights
Аналитика ASP.NET-приложений
Телеметрия IIS-сервера
Мониторинг доступности веб-сайтов
Аналитика веб-приложений
Java
Аналитика посещений веб-страниц
Телеметрия работы мобильных приложений
Proactive Detection
Определение аномального поведения в телеметрии
Автоматический анализ
Без конфигурирования
Определение устаревших браузеров, длительных функций, задержек в загрузке страниц
Hockey AppРаспространение тестовых приложений, обратная связь
Собственный магазин приложений
Уведомление тестеров об обновлениях
Сбор в реальном времени
Стэк ошибок в понятном виде
Сбор обратной связи внутри приложения
Ответ напрямую тестерам
Mobile EngagementsУправление мобильными кампаниями и вовлечение пользователей
Azure Mobile EngagementСервис вовлечения пользователя, сбора информации и контроля действий, управления промо-кампаниями для мобильных приложений
• Аналитика в реальном времени для быстрой реакции на действия
• Настраиваемые на действия пользователей пуш-уведомления
• Открытые API с легкой интеграцией
• Защита информации
• Мобильные SDK для всех платформ, включая Xamarin и Web
ПерсонализацияУникальные сообщения
уникальным пользователям
РостОптимизированный
опыт для вовлечения
МонетизацияУлучшение ROI с увеличением
посещений и возвратов
пользователей
УправлениеМобильный кампании
для устройств
и аудиторий
Персонализированные
Сообщения
Релевантный Таргетинг
Постоянные Точки
Соприкосновения с Клиентом
Расширенные
Вовлечения Клиентов
Ваш фронтенд
Платформа
Azure Mobile
Engagement
Анализ Сегментация Пуш
Сбор данных
Пуш-уведомления
и сообщения внутри
приложения
Приложения
пользователя
CMO
Marketers
Developers
Создавайте маркетинговые кампании для увеличения использования приложения
Размещайте кампании на всех своих мобильных платформах
Создавайте специфические кампании по приложениями, брэндам и странам
x
Campaigns
SCREENSHOT
You are ready to design the
notification of your campaign.
Fill in the form on the right side and
use the preview to check the look of
our notification on various platforms.
Push Info
[Notification title]
[Notification message]
[Action URL]
IMAGE
UPLOAD IMAGE
REMOVE IMAGE
How When
Choose One Choose One
Choose One
Audience
To target specific users, refine your audience by adding a first criterion.
Выберите группы пользователей на базе собственных условий
Выбирайте когда и как кампании будут достигать своих пользователей
Настройте свои пуш-уведомлениядля управления действиями среди базы пользователей
Аналитика• User
• Sessions
• Activities
• Usage Path
• Events
• Jobs
• Technical
• Crashes
• Errors
Мониторинг• Sessions
• Events
• Jobs
• Crashes
• Errors
Доступ• Push Notifications
• In-App Messages
• Cross Platform Push
Сегменты• Dynamic segmentation
• Automated Scenarios
• Custom Dashboards
© 2016 Microsoft Corporation. All rights reserved.