Урок 2. Развертывание службы рабочих процессов HRApplicationServices
Цель: научиться задавать параметры развертывания в проекте службы рабочих процессов в Visual Studio и создать пакет развертывания (ZIP-файл). После этого для развертывания пакета в IIS используется диспетчер IIS.
Назначение: развернуть приложение, включающее службы WCF или WF.
Необходимые компоненты
Перед началом урока обратите внимание на следующие необходимые компоненты:
Необходимо установить и настроить AppFabric. Дополнительные сведения см. в разделе Урок 1. Начало работы.
Необходимо установить файлы учебника. Дополнительные сведения см. в разделе Урок 1. Начало работы.
Создание пакета развертывания
Задание параметров развертывания в Visual Studio
Откройте Visual Studio 2010 от имени администратора: Нажмите кнопку Пуск, последовательно выберите пункты Все программы, Visual Studio 2010, щелкните правой кнопкой мыши элемент Microsoft Visual Studio 2010, а затем выберите пункт Запуск от имени администратора.
Выполните построение решения. В меню Построение выберите команду Построить решение или нажмите клавишу F6.
Разверните узел HRApplicationServices. Этот узел содержит развертываемую службу рабочих процессов.
Разверните узел Web.config. Обратите внимание на два вложенных узла: Web.Debug.config и Web.Release.config.
Откройте файл Web.Release.config и изучите его содержимое. Файл по умолчанию содержит четыре элемента: <xml>, <configuration>, <system.web> и <compiliation>. При этом полный файл конфигурации содержит следующий код:
<configuration xmlns:xdt= "https://schemas.microsoft.com/XML-Document-Transform"> <!--Modify the BaseURI key --> <appSettings> <add key="BaseURI" value="https://localhost/HRApplicationServices" xdt:Transform="SetAttributes(value)" xdt:Locator="Match(key)"/> </appSettings> <system.serviceModel> <client> <!--Modify the endpoint addresses for production --> <endpoint address="https://localhost/HRApplicationServices/SubmitApplication.xamlx" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IApplicationService" contract="IApplicationService" name="BasicHttpBinding_IApplicationService" xdt:Transform="SetAttributes(address)" xdt:Locator="Match(name)"/> </client> </system.serviceModel> <system.web> <compilation xdt:Transform="RemoveAttributes(debug)" /> </system.web> </configuration>
Обратите внимание на элемент <appSettings>.
<appSettings> <add key="BaseURI" value="https://localhost/HRApplicationServices" xdt:Transform="SetAttributes(value)" xdt:Locator="Match(key)"/> </appSettings>
При развертывании с помощью MSDeploy преобразование укажет процессу MSBuild найти узел BaseURI в XML-элементе <appSettings> и заменить значение атрибута указанным здесь: https://localhost/HRApplicationServices
При построении проекта и создании файла конфигурации в преобразованном файле web.config появляется следующая строка:
<appSettings> <add key="BaseURI" value="https://localhost/HRApplicationServices" /> </appSettings>
Конфигурация также содержит элемент <system.ServiceModel>, определяющий значения WCF, необходимые для подключения к службе. Коротко говоря, в разделе указывается адрес, привязка и контракт для службы. Дополнительные сведения см. в разделе Настройка служб с помощью файлов конфигурации.
В панели инструментов Visual Studio переключите конфигурацию с Отладка на Выпуск.
В обозревателе решений щелкните правой кнопкой мыши имя проекта HRApplicationServices и выберите пункт Пакет/Параметры публикации. При этом будет открыт раздел "Упаковка и публикация веб-проекта" страницы свойств проекта.
В разделе Элементы для развертывания (применяется для всех способов развертывания) должен быть выбран параметр Только необходимые для запуска приложения файлы.
В разделе Параметры пакета веб-развертывания должен быть выбран параметр Создать веб-пакет как ZIP-файл.
Скопируйте местоположение создания пакета в буфер обмена. По умолчанию это:
Obj\Release\Package\<имя решения.zip>
Задайте имя веб-сайта IIS и приложения, используемое на конечном сервере.
Сохраните все файлы решения.
Создание пакета развертывания
- Щелкните правой кнопкой мыши узел HRApplicationServices и выберите команду Построить пакет развертывания. После завершения этого действия в нижнем левом углу должно отобразиться состояние Публикация успешно завершена.
Импорт приложения в IIS
В этом разделе выполняется развертывание приложения и изменение параметра Привязки для обеспечения возможности использования протокола связи net.pipe в AppFabric.
Импорт приложения HRApplicationServices
Запустите диспетчер IIS — для этого нажмите кнопку Пуск и введите команду inetmgr.
Разверните узел Сервер, узел Сайты и щелкните правой кнопкой мыши пункт Веб-сайт по умолчанию. Затем выберите команду Развертывание и импорт и пункт Импортировать приложение.
Вставьте путь к ZIP-файлу приложения в диалоговое окно.
В диалоговом окне Установка пакета приложения будет отображено приложение и база данных. Примите значения по умолчанию.
Трижды нажмите кнопку Далее, чтобы принять значения по умолчанию на оставшихся страницах мастера Импорт пакета приложения. На вопрос о том, следует ли запускать приложение в пуле приложений .NET 4 по умолчанию, ответьте Да.
На странице Сводка будет дан общий обзор ряда элементов, установленных в составе пакета. На вкладке Сведения представлены подробные данные о том, что именно было добавлено.
Включение протокола net.pipe
AppFabric устанавливает службу управления рабочими процессами (WMS), использующую хранилище сохраняемости рабочих процессов для обеспечения надежного управления экземплярами. WMS общается со службами рабочих процессов по протоколу net.pipe. Соответственно, этот протокол должен быть включен для приложения.
Включение привязки net.pipe
В диспетчере IIS щелкните правой кнопкой мыши Веб-сайт по умолчанию и выберите пункт Изменить привязки....
Найдите в списке протокол net.pipe со звездочкой (*) в разделе Сведения о привязке. Если протокол отсутствует:
Нажмите кнопку Добавить.
В диалоговом окне Добавление привязки сайта выберите net.pipe.
В поле Сведения о привязке введите звездочку (*).
Обзор результатов
В этом уроке были заданы параметры развертывания в Visual Studio и создан пакет развертывания. Также путем импорта пакета приложения в диспетчере IIS было развернуто приложение. Наконец, для связи AppFabric с приложением был включен протокол net.pipe.
Следующие действия
Раздел Урок 3. Настройка приложения HRApplicationServices описывает настройку наблюдения и сохраняемости в AppFabric.
См. также
Основные понятия
Урок 1. Начало работы
Урок 3. Настройка приложения HRApplicationServices
Урок 4. Наблюдение за работоспособностью приложения HRApplicationServices
Урок 5. Возобновление приостановленного рабочего процесса в AppFabric
Другие ресурсы
Урок 6: Наблюдение за исключениями службы заказов
2012-03-05