SlideShare ist ein Scribd-Unternehmen logo
1 von 34
vitaly baum
product manager
vb@brightbox.ru

Управление автомобилем
через облако
Или история о том, как это стало возможным
с помощью Windows Azure
О чём доклад?
•
•
•
•

Что надо было сделать
Почему выбрали Windows Azure
Что и как построили в итоге
Какие планы на будущее
Что надо было сделать?
Или как придумывался продукт
С чего всё началось

В Москве около 3 млн авто
И около 5 млн смартфонов
Управление автомобилем с
помощью смартфона
и дополнительного оборудования
Что надо сделать?
• Мобильное приложение
• Устройство для интеграции с авто
• Серверную часть
Платформы, которые следует покрыть:
• iOS
• Android
• Windows Phone
• Windows 8
Устройство для интеграции с авто
Некоторые характеристики
•
•
•
•
•

ARM процессор
GPS приёмник
GSM модем
Акселерометр
Интеграция с CAN BUS
Что умеет Remoto?
•
•
•
•
•

Определить местоположение автомобиля
Удаленный запуск для прогрева салона
Удаленная блокировка дверей
Уведомление при эвакуации
Отслеживание маршрутов движения
http://my

.ru
Почему Windows Azure?
Преимущества платформы
Почему Windows Azure
• Желание использовать облако для
высокого SLA
• Лояльность к Microsoft
• Команда опытных .net разработчиков
• Участие в BizSpark
– Бесплатные (но лимитированные ) ресурсы
Azure
Что и как получилось
Описание решения для Remoto
Характеристики решения
• Масштабируемость до ~100К устройств
• Не более 1$ в мес/устройство
• Недоступность не более 3 часов в месяц
Архитектура решения
Описание решения для Remoto
Command
Frontend
(Web Role)

Job
(Worker Role)

Remoto
(Device)
Message Queue
(Service Bus)
Web-клиент
(REST API)

Query
Frontend
(Web Role)
Remoto (устройство)
•
•
•
•
•

TCP/UDP
Обработка команд пользователя
Отправка статуса сенсоров
Агрегирование аналитических данных
Аудит несколько Мб/день
Commands front-end
• Обрабатывает сообщения на изменение
состояния системы
– Индикаторы с устройств
– Команды от пользователей
– Настройки монтажника

• Предвалидирует и публикует в Service
Bus
REST API
•
•
•
•

Мобильные приложения (real-time)
Веб для аналитики и управления
Веб для конфигурирования
Управление правами доступа
Job Worker
• Обрабатывает сообщения из Service Bus
• Вычисляет необходимые результаты
• Публикует в Service Bus
Query Frontend
• Façade запросов к хранилищам
– Azure SQL
– Azure Table
– Azure Blob

• CDN для изображений
Преимущества
• Возможности горизонтального
масштабирования
– По длине очереди
– По нагрузке на CPU

• Хранение больших объёмов данных и их
аналитика в реальном времени
Особенности
• Ограничения Azure SQL
– Throttling запросов
– Максимальный размер базы 150Гб

• Сервисы платформы
– Использование (VM+Custom service) будет
уменьшать SLA
– Использование внешних сервисов даст
большую нагрузку по трафику
Процессы в разработке
Влияние платформы
Инструментарий
• IDE
– Visual Studio

• SCM
– github

• CI
– JetBrains TeamCity
Visual Studio
• C# .NET
• ASP.NET MVC
• Azure Emulator
git
• Terminal + SourceTree + GitHub.app
• Branch per feature set
• Единый SCM для всей команды
– Мобильные разработчики
– Серверная команда

• Интеграция с Azure Web Sites
TeamCity
• Автоматическое развёртывание
• Gated build
– Оповещения, если кто-то ломает билд

• Поднят в Azure Virtual Machine
– Уменьшило время развёртывания с 30 до 7
минут
LinqPad
• Тестирование Linq запросов
• Тестирование Odata сервисов
• Для просмотра Azure Table Storage
Планы на будущее
Что ещё предстоит сделать
Планы на будущее
• Валидируем возможность открытия API
• Расширенная пользовательская аналитика
– Рекомендации по стилю вождения
– Рекомендации по экономному вождению
– Интеграция с пробками
Спасибо!
vb@brightbox.ru
@butaji

Weitere ähnliche Inhalte

Andere mochten auch

Netcentives Overview
Netcentives OverviewNetcentives Overview
Netcentives OverviewFred Kilby
 
Masterclass 2006 2006
Masterclass 2006 2006Masterclass 2006 2006
Masterclass 2006 2006gueste279ae3
 
Mobile first with digital brands, responsive design and Drupal, Case: costume.fi
Mobile first with digital brands, responsive design and Drupal, Case: costume.fiMobile first with digital brands, responsive design and Drupal, Case: costume.fi
Mobile first with digital brands, responsive design and Drupal, Case: costume.fiSaku Sairanen
 
Fabulous Fall Favors
Fabulous Fall FavorsFabulous Fall Favors
Fabulous Fall FavorsKate Aspen
 
Bio Course Overview
Bio Course OverviewBio Course Overview
Bio Course Overviewpg8s
 
Bio Course Outline
Bio Course OutlineBio Course Outline
Bio Course Outlinepg8s
 
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"Cyril Wang
 
Data Warehouse Presentation
Data Warehouse PresentationData Warehouse Presentation
Data Warehouse PresentationFred Kilby
 

Andere mochten auch (11)

Charlotte Business Journal ENERGY INC.
Charlotte Business Journal ENERGY INC.Charlotte Business Journal ENERGY INC.
Charlotte Business Journal ENERGY INC.
 
Netcentives Overview
Netcentives OverviewNetcentives Overview
Netcentives Overview
 
Masterclass 2006 2006
Masterclass 2006 2006Masterclass 2006 2006
Masterclass 2006 2006
 
Mobile first with digital brands, responsive design and Drupal, Case: costume.fi
Mobile first with digital brands, responsive design and Drupal, Case: costume.fiMobile first with digital brands, responsive design and Drupal, Case: costume.fi
Mobile first with digital brands, responsive design and Drupal, Case: costume.fi
 
Fabulous Fall Favors
Fabulous Fall FavorsFabulous Fall Favors
Fabulous Fall Favors
 
Bio Course Overview
Bio Course OverviewBio Course Overview
Bio Course Overview
 
Bio Course Outline
Bio Course OutlineBio Course Outline
Bio Course Outline
 
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"
Digests for the book "Scalability Rules: 50 Principles for Scaling Web Sites"
 
Data Warehouse Presentation
Data Warehouse PresentationData Warehouse Presentation
Data Warehouse Presentation
 
CONTROLLING
 CONTROLLING  CONTROLLING
CONTROLLING
 
Tema 2
Tema 2Tema 2
Tema 2
 

Ähnlich wie Remoto powered by Windows Azure

Roman Zdebskiy - Windows Azure
Roman Zdebskiy - Windows AzureRoman Zdebskiy - Windows Azure
Roman Zdebskiy - Windows AzureAndrew Mayorov
 
Архитектура и технологии Pryaniky.com
Архитектура и технологии Pryaniky.comАрхитектура и технологии Pryaniky.com
Архитектура и технологии Pryaniky.comPryaniky.com
 
Микросервисный фронтенд
Микросервисный фронтендМикросервисный фронтенд
Микросервисный фронтендViacheslav Slinko
 
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Ontico
 
Paper 67 (supplementary file) sqadays 2010-burmistrov_fomin_3011
Paper 67 (supplementary file)   sqadays 2010-burmistrov_fomin_3011Paper 67 (supplementary file)   sqadays 2010-burmistrov_fomin_3011
Paper 67 (supplementary file) sqadays 2010-burmistrov_fomin_3011Alexei Lupan
 
разработка Metro style приложений
разработка Metro style приложенийразработка Metro style приложений
разработка Metro style приложенийОлег Винников
 
Микросервисы, чистый PaaS и конкурс Мисс Россия
Микросервисы, чистый PaaS и конкурс Мисс РоссияМикросервисы, чистый PaaS и конкурс Мисс Россия
Микросервисы, чистый PaaS и конкурс Мисс РоссияAlexander Byndyu
 
Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"Fwdays
 
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...Ontico
 
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?buranLcme
 
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...Microsoft
 
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...Microsoft
 
Docker и оркетсрация контейнеров в облаке Azure
Docker и оркетсрация контейнеров в облаке AzureDocker и оркетсрация контейнеров в облаке Azure
Docker и оркетсрация контейнеров в облаке AzureStas Pavlov
 
Разработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéРазработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéInterSystems CEE
 
Решения сообщества для SharePoint
Решения сообщества для SharePointРешения сообщества для SharePoint
Решения сообщества для SharePointVitaly Baum
 
Демонстрация возможностей по автоматизации ЦОД
Демонстрация возможностей по автоматизации ЦОДДемонстрация возможностей по автоматизации ЦОД
Демонстрация возможностей по автоматизации ЦОДCisco Russia
 
Современные технологии сайтостроения для решения бизнес-задач
Современные технологии сайтостроения для решения бизнес-задач Современные технологии сайтостроения для решения бизнес-задач
Современные технологии сайтостроения для решения бизнес-задач simai
 
Миграция БД - практический_подход с инструментами Embarcadero
Миграция БД - практический_подход с инструментами EmbarcaderoМиграция БД - практический_подход с инструментами Embarcadero
Миграция БД - практический_подход с инструментами EmbarcaderoAndrew Sovtsov
 

Ähnlich wie Remoto powered by Windows Azure (20)

Mobile web apps
Mobile web appsMobile web apps
Mobile web apps
 
Roman Zdebskiy - Windows Azure
Roman Zdebskiy - Windows AzureRoman Zdebskiy - Windows Azure
Roman Zdebskiy - Windows Azure
 
Архитектура и технологии Pryaniky.com
Архитектура и технологии Pryaniky.comАрхитектура и технологии Pryaniky.com
Архитектура и технологии Pryaniky.com
 
Микросервисный фронтенд
Микросервисный фронтендМикросервисный фронтенд
Микросервисный фронтенд
 
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
 
Paper 67 (supplementary file) sqadays 2010-burmistrov_fomin_3011
Paper 67 (supplementary file)   sqadays 2010-burmistrov_fomin_3011Paper 67 (supplementary file)   sqadays 2010-burmistrov_fomin_3011
Paper 67 (supplementary file) sqadays 2010-burmistrov_fomin_3011
 
разработка Metro style приложений
разработка Metro style приложенийразработка Metro style приложений
разработка Metro style приложений
 
Микросервисы, чистый PaaS и конкурс Мисс Россия
Микросервисы, чистый PaaS и конкурс Мисс РоссияМикросервисы, чистый PaaS и конкурс Мисс Россия
Микросервисы, чистый PaaS и конкурс Мисс Россия
 
Что нового в 11.0?
Что нового в 11.0?Что нового в 11.0?
Что нового в 11.0?
 
Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"
 
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...
Разработка кроссплатформенного фреймворка на С++ для мобильных платформ / Вла...
 
Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?Построение собственного JS SDK — зачем и как?
Построение собственного JS SDK — зачем и как?
 
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...
Microsoft Azure - введение в основные сервисы для разработки и инфраструктуры...
 
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...
Облако Microsoft Azure - введение в основные сервисы для разработки и инфраст...
 
Docker и оркетсрация контейнеров в облаке Azure
Docker и оркетсрация контейнеров в облаке AzureDocker и оркетсрация контейнеров в облаке Azure
Docker и оркетсрация контейнеров в облаке Azure
 
Разработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéРазработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для Caché
 
Решения сообщества для SharePoint
Решения сообщества для SharePointРешения сообщества для SharePoint
Решения сообщества для SharePoint
 
Демонстрация возможностей по автоматизации ЦОД
Демонстрация возможностей по автоматизации ЦОДДемонстрация возможностей по автоматизации ЦОД
Демонстрация возможностей по автоматизации ЦОД
 
Современные технологии сайтостроения для решения бизнес-задач
Современные технологии сайтостроения для решения бизнес-задач Современные технологии сайтостроения для решения бизнес-задач
Современные технологии сайтостроения для решения бизнес-задач
 
Миграция БД - практический_подход с инструментами Embarcadero
Миграция БД - практический_подход с инструментами EmbarcaderoМиграция БД - практический_подход с инструментами Embarcadero
Миграция БД - практический_подход с инструментами Embarcadero
 

Remoto powered by Windows Azure