Опубликован: 27.12.2011 | Доступ: свободный | Студентов: 1293 / 33 | Оценка: 4.44 / 4.44 | Длительность: 12:31:00
Лекция 4:

Размещение приложений Silverlight на облачной платформе

< Лекция 3 || Лекция 4: 1234 || Лекция 5 >
Аннотация: Рассмотрены вопросы, связанные с развертыванием приложения Silverlight на облачной платформе. Описан порядок создания хранилищ данных, настройки сервера баз данных SQL Azure, а также порядок создания и запуска необходимых служб. Приведена необходимая терминология и последовательность по настройке и развертыванию бизнес-приложений в облаке Microsoft Azure. Указаны особенности и неочевидные моменты настройки приложений Silverlight для облака.

Цель лекции: изучение последовательности развертывания приложений Silverlight в облачной среде. А также порядок создания и настройки основных облачных служб и сервера баз данных SQL Azure.

Приложение Silverlight может быть размещено в Microsoft Azure. C точки зрения разработчика использование облачной платформы значительно упрощает механизмы развертывания Silverlight приложений. Так в Azure пропадает необходимость в установке и настройке сервера и настройке доменов на использование из внешней сети, а оплата аппаратных ресурсов осуществляется по факту их реального использования. Для Silverlight особое значение имеет служба хостинга, которая позволяет размещать Silverlight приложения, хранилище, которое используется для размещения различных ресурсов приложения, таких как изображения, видео и файлы, а служба SQL Azure позволяет размещать базу данных приложений.

Первый сценарий заключается в использовании облака для развертывания уже существующего Silverlight бизнес-приложения, которое состоит из следующих компонентов:

  • Базы данных размещенной в SQL Server R2.
  • Приложения Silverlight размещённого на сервере в виде ASP.Net приложения.

На первом этапе развертывания переносится база данных. На рисунке 4.1 представлена схема базы данных которая должна бать размещена в облаке.

Схема базы данных

Рис. 4.1. Схема базы данных

В SQL Azure необходимо создать пустую базу данных, для этого необходимо иметь учетную запись в Windows Azure. База данных рассчитана на обработку не очень большого объема информации, то для нее устанавливается тип Web ( рис. 4.2).

Портал Windows Azure

увеличить изображение
Рис. 4.2. Портал Windows Azure

После создания базы данных с помощью инструмента SQL Azure Migration Wizard доступного на CodePlex (http://sqlazuremw.codeplex.com/) можно импортировать существующую схему базы данных и данные в облачную базу ( рис. 4.3).

Мастер миграции баз данных

Рис. 4.3. Мастер миграции баз данных

В ходе импорта мастер миграции выполнит анализ существующей базы данных, так как не все элементы базы данных SQL Server могут быть перенесены в облако и анализ выявляет эти проблемы. После определения проблем необходимо вручную внести рекомендуемые исправлению в базу SQL Server и затем можно произвести миграцию.

В заключении необходимо изменить строку подключения в файле web.config нашего приложений, чтобы она ссылалась на облачную версию базы данных и база данных будет готова к использованию.

<connectionStrings>
<add name="CityHotelsEntities" 
connectionString="metadata=res://*/CityHotelModel.csdl|res://*/CityHotelModel.ssdl|res:
//*/CityHotelModel.msl;provider=System.Data.SqlClient;provider 
Connectionstring=&quot;data source=vextmrs0m2.database.windows.net;initial 
catalog=CityHotels;user id=gillcleeren;
password=SOMEPASSWORD;multipleactiveresultsets=True;App=EntityFramework&quot;" 
providerName="System.Data.EntityClient" />
</connectionStrings>

После создания базы данных следующим шагом будет перенос служб доступа к данным и реализация их в облаке. В существующем приложение службы реализованы в виде отдельного проекта ServiceHostingSite.

Для переноса этого проекта в облако необходимо добавить новый Windows Azure Project (с именем CityHotelBrowserCloud). Для этого в существующем решении создается проект ASP.Net Role ( рис. 4.4).

Создание проекта Windows Azure

увеличить изображение
Рис. 4.4. Создание проекта Windows Azure
< Лекция 3 || Лекция 4: 1234 || Лекция 5 >