В начале июня 2013 года на конференции TechEd (Северная Америка) член технического совета Microsoft и ведущий специалист компании по разработке ALM Брайан Гарри анонсировал Visual Studio 2013 и Team Foundation Server 2013 вместе с .
Net Framework 4.5. .
1. Несколько недель спустя предварительные версии этих продуктов были анонсированы на конференции Build 2013 в Сан-Франциско.
Помимо многочисленных улучшений среды разработки, появилась возможность создавать приложения для любого устройства на базе Windows, включая Windows 8.1, веб-приложения и сервисы для локальных и облачных сред с использованием новых дополнений к Visual Studio и ASP.NET, упрощающих веб-разработку.
разработка для различных браузеров и устройств, гибкое управление портфелями проектов, взаимодействие в режиме реального времени и упрощенный доступ к необходимой информации непосредственно из редактора кода — Visual Studio 2013 представляет собой полноценный инструмент для разработки, диагностики и отладки приложений в облаке.
Эта статья — первая из серии, которая даст новым разработчикам представление о том, как создавать приложения Windows Azure с нуля, развертывать их с помощью Visual Studio 2013 Preview, тестировать их и управлять ими в облачных средах.
Для работы нам понадобится, собственно, Visual Studio 2013 Preview и подписка на Windows Azure. Вы можете бесплатно установить Visual Studio 2013 Preview: Центр загрузки Майкрософт .
Доступно несколько редакций, нам понадобится Ultimate edition. После установки вы можете увидеть шаблон проекта для создания приложений в Облаке.
Рисунок 1
Изначально этот шаблон пуст. Требуется установка Windows Azure SDK 2.1 для VS2013 который также может работать с VS2012 и 2010 SP1. При открытии нового проекта этого типа установка начнется автоматически.
Как и другие дополнительные инструменты, такие как инструменты данных SQL Server, установка по умолчанию происходит через установщик веб-платформы.
Логично предположить, что машина разработчика, на которой будут создаваться облачные приложения, имеет доступ к Интернету.
Однако бывают ситуации, когда разработка и тестирование проводятся локально, а развертывание в облаке — с нескольких выделенных машин в отделе.
В этом случае вам следует установить Windows Azure SDK «вручную» на локальную машину в соответствии с инструкции (См.
раздел «Инструкции по установке»).
Системные требования указаны там же в разделе «Системные требования».
Вы можете скачать отдельно WindowsAzureAuthoringTools-x64.msi, WindowsAzureEmulator-x64.exe, WindowsAzureTools.vs120.exe и другие компоненты.
Здесь .
После установки Windows Azure SDK надпись «Get Windows Azure SDK» в шаблоне проекта (рис.
1) меняется на Windows Azure Cloud Service. Добавим в создаваемое приложение веб-роль ASP.NET:
Рис.
2
и в него веб-форму по умолчанию:
Рис.
3
Для рассмотрения дальнейшего процесса локального тестирования приложения и его размещения в облаке необходимо создать простой собственный код, который можно позаимствовать, например, Здесь :
Рис.
4
По умолчанию он запускается в локальном эмуляторе Windows Azure, установленном как часть Windows Azure SDK. Если в системе включен контроль доступа пользователей, появится сообщение
Рис.
5 Чтобы запустить Visual Studio с правами администратора, перейдите в каталог, в котором она установлена.
В Windows 8 найдите значок Visual Studio на начальном экране, щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора» в нижней строке меню.
Рис.
6
Или нажмите на пункт меню «Открыть расположение файла», в браузере перейдите в свойства ярлыка Visual Studio 2013 Preview, нажмите кнопку «Дополнительно» и установите флажок «Запуск от имени администратора»:
Рис.
7 Перезапустите Visual Studio, снова откройте созданное ранее приложение и запустите его.
Рис.
8 Нажмите кнопку «Кнопка».
В обработчике событий при нажатии на эту кнопку будет запущено добавленное ранее создание BLOB-объекта в хранилище Azure и строка кода для отладки.
Скрипт 1 В окне «Вывод» мы увидим соответствующую надпись.var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString")); var blobClient = storageAccount.CreateCloudBlobClient(); var blobContainer = blobClient.GetContainerReference("testblob"); blobContainer.CreateIfNotExists(); var blob = blobContainer.GetBlockBlobReference(Guid.NewGuid().
ToString()); blob.UploadFromStream(new MemoryStream(Encoding.UTF8.GetBytes("Hello Windows Azure"))); System.Diagnostics.Trace.WriteLine("Added blob to Windows Azure Storage");
Кроме того, в целях тестирования наша процедура Button1_Click содержит конфигурацию диагностического монитора для передачи журналов в другой большой двоичный объект с определенной частотой, в данном случае каждые полминуты.
DiagnosticMonitorConfiguration diag = DiagnosticMonitor.GetDefaultInitialConfiguration();
diag.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(30);
DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", diag);
Скрипт 2
Давайте остановим приложение из VS или закрыв окно браузера.
Откройте обозреватель серверов.
Обратите внимание, что эмулятор Windows Azure содержит два контейнера больших двоичных объектов в разделе Storage\Blobs. Первый — это созданный нами тестовый объект (сценарий 1).
Второй — wad-control-container — контейнер, который создан для записи логов с помощью диагностического монитора (Скрипт 2).
Рис.
9 Дважды щелкнув контейнер testblob, вы увидите, что он содержит объекты с именами направляющих, создаваемые (сценарий 1) при каждом запуске приложения и нажатии кнопки на веб-странице (рис.
8).
Рис.
10
Двойной щелчок по каждой строке открывает содержимое соответствующего блоба в окне, скажем, IE. Там есть строка трассировки Hello Windows Azure.
Второй контейнер содержит журналы Windows Azure, собранные с помощью Diagnostic Monitor:
Рис.
11
Каждый блоб также можно открыть в браузере и прочитать сохраненный в тот или иной момент журнал:
Рис.
12 Убедившись, что приложение работает, перейдем к хостингу и запуску его в Облаке.
Сначала для запуска веб-ролей в среде Windows Azure потребуется создать облачный сервис, для чего заходим на портал управления Windows Azure, нажимаем значок + в левом нижнем углу и в появившемся меню выбираем Cloud Service. .
Опция Custom Create позволяет немедленно опубликовать облачную службу, указав файл конфигурации (CSCFG), пакет (CSPKG) и сертификат. Поскольку мы собираемся публиковать приложение из проекта Visual Studio, нам будет достаточно опции Quick Create. В этом случае вам нужно только придумать название услуги и указать дата-центр, в котором она будет работать.
Дата-центр, как правило, выбирают из соображений минимизации стоимости трафика, который внутри одного дата-центра бесплатен.
Например, если наше приложение будет работать с базой данных Azure SQL, созданной в дата-центре Северной Европы, то имеет смысл разместить сервис там.
Рис.
13 Наше приложение использует учетную запись хранения, которая ранее эмулировалась инструментами Windows Azure, установленными локально.
Теперь вам нужно создать его в облаке:
Рис.
14 Остается только перенастроить проект в Visual Studio из эмулятора для использования «честных» облачных сервисов и учетной записи хранения.
Для этого в Обозревателе решений в проекте Windows Azure выберите Свойства роли, которая обращается к службам хранения, и перейдите на вкладку Настройки.
В строке подключения теперь указан локальный эмулятор: UseDevelopmentStorage=true.
Рис.
15
Вам нужно отправить его в Azure. Самый простой способ это сделать, чтобы не вводить учетную запись и первичный ключ вручную, — нажать на многоточие справа и выбрать «Загрузить настройки публикации»:
Рис.
16 Для текущей подписки будет загружен файл, который позволит Visual Studio автоматически получить указанную выше информацию.
Он содержит информацию о сертификате, поэтому следует сохранить его в надежном месте.
Указываем этот файл, нажав кнопку Импортировать.
Рис.
17 Приложение готово к публикации.
Это можно сделать на портале управления Windows Azure, создав пакет службы и файл конфигурации службы, или непосредственно из Visual Studio с помощью мастера публикации.
Чтобы запустить его, выберите «Опубликовать» в контекстном меню проекта Windows Azure.
Рис.
18 Приложение успешно опубликовано.
Рис.
19 Если теперь запустить его в облаке, указав адрес созданного сервиса на рис.
13
Рис.
20 диагностическая информация для целей тестирования (рис.
10-12) будет храниться в контейнере рис.
14 так же, как это произошло в случае с эмулятором.
Просмотреть собранную диагностику можно разными способами, в том числе и через Обозреватель серверов, как это было сделано на рис.
9. Однако теперь она будет указывать на Облако, потому что.
мы изменили конфигурацию проекта и строку подключения (рис.
15- 17).
Рис.
21 В следующей статье мы поговорим об отладке и тестировании приложений непосредственно в Облаке.
Теги: #VisualStudio
-
Давайте Сделаем Tcp Быстрее
19 Oct, 24 -
Краткое Введение В Gnu Autoconf
19 Oct, 24