Microsoft TechEd Russia 2011: День второй. Доклад «Подходы облачного проектирования в Windows Azure».
На второй доклад по по теме облачных вычислений, а конкретно по теме публичного облака я попал не так удачно, как на первый и сесть пришлось на задние ряды, на "Камчатку". Но от этого доклад не стал для меня менее интересным. Итак, доклад был посвящен особенностям проектирования приложений под облако.
Вот три кита на которых базируется облако Windows Azure:
- Windows Azure Platform
- Хранение данных
- Windows Azure AppFabric
А вот не менее важные требования к архитектуре:
- Слабая связанность компьютеров
- Масштабируемость
- Отказоустойчивость
- Параллелизм
- Сохранение целостности данных
Типы возможных сценариев работы с облаком:
- Размещение данных в облаке
- Обработка данных в облаке
Проектирование данных в облаке
Имеются следующие варианты размещения данных в облаке:
- Горизонтальное. Вариант размещения TableStorage характерен автоматической балансировкой данных и оплатой за запрос. SQL Azure хранение без автоматической балансировки и с оплатой за объем.
- Вертикальное - это раскладка по кучкам типов данных.
- Гибридное.
Фоновая обработка в облаке
Стоит учитывать, что обработка данных в облаке происходит асинхронно с использованием очереди.
Важные моменты:
- Повторная обработка. Надо производить запись состояния обработки, т.к. может умереть Worker.
- Ядовитые сообщения. Это когда при обработке какого-либо сообщения Worker все время умирает и не может произвести корректную обработку. Для этого в Azure уже присутствует счетчик кол-ва попыток обработки сообщения, который можно проверять. Соответственно сообщение можно сделать ядовитым и отдать другому обработчику.
- Оптимизация ресурсов. Создавая очередь надо прописывать тип задачи. Типы задач можно загружать динамически.
- Большие объемы данных. В этом случае может, например, упасть Worker. Надо делить данные и посылать отдельные фрагменты отдельными сообщениями с общим идентификатором данных.
Приложение в облаке
Здесь следующие моменты: Карусельная диспетчеризация, следовательно, мы работаем с разными физическими серверами, следует учитывать при различных функциях обновления (тот же AJAX); Machine Key для ViewState должен совпадать.
Варианты хранения состояний:
- AppFabric Caching
- SQL Azure
- Table Storage
- Cookie (можно начинать смеяться)
Вот на такие моменты Гайдар Магдануров обратил внимание слушателей. Надо сказать, что как написано, так и рассказано все было очень четко, кратко, но понятно и по делу. Отличный доклад и поскольку Гайдар попросил (в шутливой форме) всех присутствующих не ставить ему ничего ниже 8, то мной была поставлена максималка, что полностью отражало мое отношение к этому докладу.
Ноябрь 2011
По теме
- Microsoft TechEd Russia 2011: День второй. Общее впечатление и заключение.
- Microsoft TechEd Russia 2011: День второй. Доклад «10 смертельных грехов безопасности администратора Windows».
- Microsoft TechEd Russia 2011: День второй. Доклад «Windows Phone 7 и HTML 5».
- Microsoft TechEd Russia 2011: День первый. Субъективные ощущения от первого дня.
- Microsoft TechEd Russia 2011: День первый. Доклад «Современные тенденции информационной безопасности».
- Microsoft TechEd Russia 2011: День первый. Пленарный доклад.
- Microsoft TechEd Russia 2011: День первый. Начало.
- Фотоотчет с релиза Windows 7 в Москве
- Семинары TechNet. Осень 2006