Высокомасштабируемые веб-приложения в Windows Azure

| Воскресенье, 5 мая, 2013

Метки: Windows Azure Комментарии: 0

Предположим, для организации нужно создать веб-приложение повсеместно доступное через Интернет. Обычное решение на сегодняшний день - это разместить приложение в дата-центре организации или хостинговой компании. Но в большинстве случаев выбор облачной платформы, такой как Windows Azure, будет наилучшим решением. Например, приложение должно обрабатывать одновременно большое количество пользовательских запросов, и это главное условие работы приложения. Особая поддержка масштабируемых приложений и данных, обеспечивает в Windows Azure значительно больший объем передаваемых данных, чем в традиционных веб-технологиях.

Или предположим, что нагрузка на приложение сильно изменяется – значительные скачки посещаемости возникают в длительных периодах низкой загруженности. Это может быть сайт, продающий билеты на какие-то мероприятия или поездки или сайт видеохостинга, публикующий свежие ролики для большого количества зрителей с резкими скачками одновременных просмотров. Работа таких приложений в обычных дата-центрах всегда требует наличия достаточного количества резервных машин, которые простаивают без дела продолжительные периоды низкой активности пользователей, для того, чтобы успешно справляться с резкими скачками посещаемости.

Но если приложение находится в Windows Azure, то количество экземпляров приложения можно увеличить в любой момент, и потом сократить после уменьшения активности пользователей. Так как в Windows Azure оплачиваются только используемые ресурсы, компания платит только за обеспечение почасовой работы каждого экземпляра приложения, это гораздо дешевле, чем поддерживать работу компьютеров, неиспользуемых значительное время.

Для создания высокомасштабируемых приложений для Windows Azure, разработчики могут использовать веб-роли и таблицы.

В примере выше клиенты - это браузеры, и приложение соответственно может быть создано на ASP.NET или на любой другой веб-технологии. Также можно создать масштабируемое веб-приложение предоставляющее REST и/или SOAP веб-сервисы используя Windows Communication Foundation, и вызывать методы этого сервиса, к примеру, в приложении Silverlight. Во всех случаях разработчик определяет сколько экземпляров вер-роли нужно запустить, а fabric–контроллер создает соответствующее количество виртуальных машин и отслеживает их работу, следя за тем чтобы количество заданных машин работало постоянно. Для хранения данных приложения используют таблицы Windows Azure, которые являются высокомасштабируемыми хранилищами, позволяющие обрабатывать очень большие объемы данных.

Комментарии
Никто еще не оставил здесь комментарий.
Войдите, чтобы написать комментарий , или воспользуйтесь формой ниже.
 

Copyright © CodeHint.ru 2013-2019