- Архитектура активации WAS WAS Activation Architecture
- Компоненты активации Activation Components
- Адаптеры прослушивателя Listener Adapters
- Размещение в службе активации процессов Windows Hosting in Windows Process Activation Service
- Элементы модели адресации WAS Elements of the WAS Addressing Model
- Настройка службы активации процессов Windows для использования с Windows Communication Foundation Configuring the Windows Process Activation Service for Use with Windows Communication Foundation
- Настройка узла с привязками протоколов, отличных от HTTP Configuring a Site with Non-HTTP bindings
- Разрешение приложению использовать протоколы, отличные от HTTP Enabling an Application to Use Non-HTTP Protocols
- Построение службы WCF, использующей WAS для активации по протоколу, отличному от HTTP Building a WCF Service That Uses WAS for Non-HTTP activation
Архитектура активации WAS WAS Activation Architecture
В настоящем разделе перечисляются и обсуждаются компоненты службы активации процесса Windows (также известной как WAS). This topic itemizes and discusses the components of the Windows Process Activation Service (also known as WAS).
Компоненты активации Activation Components
Служба WAS состоит из нескольких архитектурных компонентов. WAS consists of several architectural components:
Адаптеры прослушивателя. Listener adapters. Службы Windows, получающие сообщения по определенным сетевым протоколам и взаимодействующие со службой WAS для маршрутизации входящих сообщений к правильным рабочим процессам. Windows services that receive messages on specific network protocols and communicate with WAS to route incoming messages to the correct worker process.
WAS. WAS. Служба Windows, управляющая созданием и временем существования рабочих процессов. The Windows service that manages the creation and lifetime of worker processes.
Универсальный исполняемый файл рабочего процесса (w3wp.exe). The generic worker process executable (w3wp.exe).
Диспетчер приложений. Application manager. Управляет созданием и временем существования доменов приложений, в которых размещаются приложения внутри рабочих процессов. Manages the creation and lifetime of application domains that host applications within the worker process.
Обработчики протоколов. Protocol handlers. Специфичные для протоколов компоненты, которые запускаются в рабочем процессе и управляют взаимодействием между рабочим процессом и отдельными адаптерами прослушивателя. Protocol-specific components that run in the worker process and manage communication between the worker process and the individual listener adapters. Существуют обработчики протоколов двух типов: обработчики протоколов процесса и обработчики протоколов домена приложения. Two types of protocol handlers exist: process protocol handlers and AppDomain protocol handlers.
Когда служба WAS активирует экземпляр рабочего процесса, она загружает требуемые обработчики протоколов процесса в рабочей процесс и использует диспетчер приложения для создания домена приложения, в котором будет размещено это приложение. When WAS activates a worker process instance, it loads the process protocol handlers required into the worker process and uses the application manager to create an application domain to host the application. Домен приложения загружает код приложения, а также обработчики протоколов домена приложения, которые требуются для используемых приложением сетевых протоколов. The application domain loads the application’s code as well as the AppDomain protocol handlers that the network protocols used by the application require.
Адаптеры прослушивателя Listener Adapters
Адаптеры прослушивателя — это отдельные службы Windows, реализующие логику сетевого взаимодействия, используемую для приема сообщений по сетевому протоколу, по которому они ожидают передачи данных. Listener adapters are individual Windows services that implement the network communication logic used to receive messages using the network protocol on which they listen. В следующей таблице перечислены Адаптеры прослушивателя для протоколов Windows Communication Foundation (WCF). The following table lists the listener adapters for Windows Communication Foundation (WCF) protocols.
Размещение в службе активации процессов Windows Hosting in Windows Process Activation Service
Служба активации Windows (WAS) управляет активацией и временем жизни рабочих процессов, которые содержат приложения, размещенные в службах Windows Communication Foundation (WCF). The Windows Process Activation Service (WAS) manages the activation and lifetime of the worker processes that contain applications that host Windows Communication Foundation (WCF) services. Модель процесса WAS обобщает модель процесса IIS 6.0 для HTTP-сервера, удаляя зависимость от HTTP. The WAS process model generalizes the IIS 6.0 process model for the HTTP server by removing the dependency on HTTP. Это позволяет службам WCF использовать протоколы HTTP и отличные от HTTP, такие как net. TCP, в среде размещения, которая поддерживает активацию на основе сообщений и предлагает возможность размещения большого количества приложений на определенном компьютере. This allows WCF services to use both HTTP and non-HTTP protocols, such as Net.TCP, in a hosting environment that supports message-based activation and offers the ability to host a large number of applications on a given machine.
Дополнительные сведения о построении службы WCF, работающей в среде с размещением, см. в разделе как разместить службу WCF в WAS. For more information about building a WCF service that runs in the WAS hosting environment, see How to: Host a WCF Service in WAS.
Модель процессов WAS предоставляет несколько функций, благодаря которым размещение приложений можно осуществлять более надежным и управляемым способом и при этом более эффективно использовать ресурсы. The WAS process model provides several features that enable applications to be hosted in a way that is more robust, more manageable, and that uses resources efficiently:
Активация приложений на основе сообщений и динамические запуск и остановка приложений рабочего процесса в ответ на входящие рабочие элементы, поступающие по протоколу HTTP или по сетевым протоколам, отличным от HTTP. Message-based activation of applications and worker process applications start and stop dynamically in response to incoming work items that arrive using HTTP and non-HTTP network protocols.
Надежный перезапуск приложений и рабочих процессов для поддержания состояния выполняемых приложений. Robust application and worker process recycling to maintain the health of running applications.
Централизованные настройка приложений и управление ими. Centralized application configuration and management.
Возможность использования приложениями модели процессов IIS без развертывания полной установки IIS. Allows applications to take advantage of the IIS process model without requiring the deployment footprint of a full IIS installation.
Windows Server AppFabric работает с IIS 7,0 и службой активации Windows (WAS), чтобы предоставить обширную среду размещения приложений для служб NET4 WCF и WF. Windows Server AppFabric works with IIS 7.0 and Windows Process Activation Service (WAS) to provide a rich application hosting environment for NET4 WCF and WF services. К ее преимуществам относятся управление жизненным циклом, перезапуск процессов, совместное размещение, быстрая защита от сбоев, обработка потерянных процессов, активация по запросу и наблюдение за работоспособностью. These benefits include process life-cycle management, process recycling, shared hosting, rapid failure protection, process orphaning, on-demand activation, and health monitoring. Подробные сведения см. в разделе функции размещения AppFabric и Основные понятия размещения AppFabric. For detailed information, see AppFabric Hosting Features and AppFabric Hosting Concepts.
Элементы модели адресации WAS Elements of the WAS Addressing Model
Приложения имеют адреса универсального кода ресурса (URI), представляющие собой единицы кода, временем существования и средой выполнения которых управляет сервер. Applications have Uniform Resource Identifier (URI) addresses, which are the code units whose lifetime and execution environment are managed by the server. В одном экземпляре сервера WAS может размещаться много различных приложений. A single WAS server instance can be home to many different applications. Серверы организуют приложения в группы, называемые сайтами. Servers organize applications into groups called sites. Внутри узла приложения упорядочены иерархически, их расположение отражает структуру URI, выполняющих функцию их внешних адресов. Within a site, applications are arranged in a hierarchical manner that reflects the structure of the URIs that serve as their external addresses.
Адреса приложений состоят из двух частей: базовый префикс URI и относительный адрес конкретного приложения (путь), сочетание этих элементов дает внешний адрес приложения. Application addresses have two parts: a base URI prefix and an application-specific, relative address (path), which provide the external address for an application when joined together. Базовый префикс URI создается из привязки узла и используется для всех приложений в этом узле. The base URI prefix is constructed from the site binding and is used for all the applications under the site. После этого адреса приложений создаются путем создания фрагментов пути для конкретного приложения (например, «/Аппликатиононе») и добавления их к базовому префиксу URI (например, «net. TCP://localhost») для получения полного URI приложения. Application addresses are then constructed by taking application-specific path fragments (such as, «/applicationOne») and appending them to the base URI prefix (for example, «net.tcp://localhost») to arrive at the full application URI.
В следующей таблице приведены несколько возможных сценариев адресации для сайтов WAS с привязками сайтов HTTP и привязками сайтов, отличными от HTTP. The following table illustrates several possible addressing scenarios for WAS sites with both HTTP and non-HTTP site bindings.
Настройка службы активации процессов Windows для использования с Windows Communication Foundation Configuring the Windows Process Activation Service for Use with Windows Communication Foundation
В этом разделе описываются шаги, необходимые для настройки службы активации Windows (также известной как WAS) в Windows Vista для размещения служб Windows Communication Foundation (WCF), не передающих сетевые протоколы HTTP. This topic describes the steps required to set up Windows Process Activation Service (also known as WAS) in Windows Vista to host Windows Communication Foundation (WCF) services that do not communicate over HTTP network protocols. Настройка предполагает следующие шаги. The following sections outline the steps for this configuration:
Установите (или подтвердите установку) необходимые компоненты активации WCF. Install (or confirm the installation of) the WCF activation components required.
Создайте узел WAS с привязками сетевых протоколов, которые планируется использовать, или добавьте новую привязку протокола в существующий узел. Create a WAS site with the network protocol bindings you wish to use, or add a new protocol binding to an existing site.
Создайте приложение для размещения служб и разрешите этому приложению использовать требуемые сетевые протоколы. Create an application to host your services and enable that application to use the required network protocols.
Создайте службу WCF, которая предоставляет конечную точку, отличную от HTTP. Build a WCF service that exposes a non-HTTP endpoint.
Настройка узла с привязками протоколов, отличных от HTTP Configuring a Site with Non-HTTP bindings
Для использования в сочетании со службой WAS привязки к протоколу, отличному от HTTP, необходимо добавить привязку узла в конфигурацию WAS. To use a non-HTTP binding with WAS, the site binding must be added to the WAS configuration. Хранилищем конфигурации для службы WAS является файл applicationHost.config, находящийся в каталоге %windir%\system32\inetsrv\config. The configuration store for WAS is the applicationHost.config file, located in the %windir%\system32\inetsrv\config directory. Это хранилище конфигурации используется и службой WAS, и службами IIS 7.0. This configuration store is shared by both WAS and IIS 7.0.
applicationHost.config представляет собой текстовый XML-файл, который можно открыть в любом стандартном текстовом редакторе, таком как Блокнот. applicationHost.config is an XML text file that can be opened with any standard text editor (such as Notepad). Однако предпочтительным способом добавления привязок сайта, отличных от HTTP, является средство настройки командной строки IIS 7,0 (appcmd.exe). However, the IIS 7.0 command-line configuration tool (appcmd.exe) is the preferred way to add non-HTTP site bindings.
Следующая команда добавляет в веб-узел по умолчанию привязку узла к протоколу net.tcp с помощью команды appcmd.exe (вводится как одна строка). The following command adds a net.tcp site binding to the default Web site using appcmd.exe (this command is entered as a single line).
Эта команда добавляет новую привязку net.tcp в веб-узел по умолчанию путем добавления приведенной ниже строки в файл applicationHost.config. This command adds the new net.tcp binding to the default Web site by adding the line indicated below to the applicationHost.config file.
Разрешение приложению использовать протоколы, отличные от HTTP Enabling an Application to Use Non-HTTP Protocols
Вы можете включить или отключить отдельную сеть, протоколсат уровень приложения. You can enable or disable individual network protocolsat the application level. Следующая команда иллюстрирует включение и протокола HTTP, и протокола net.tcp для приложения, выполняющегося на сайте Default Web Site . The following command illustrates how to enable both the HTTP and net.tcp protocols for an application that runs in the Default Web Site .
Следующий XML-код из файла applicationHost.config иллюстрирует сайт, привязанный и к протоколу HTTP, и к протоколу, отличному от HTTP. The following XML code from applicationHost.config illustrates a site bound to both HTTP and non-HTTP protocols. Дополнительная конфигурация, необходимая для поддержки отличных от HTTP протоколов, выделена комментариями. The additional configuration required to support non-HTTP protocols is called out with comments.
При попытке запустить службу с помощью WAS для активации по протоколу, отличному от HTTP, когда службы WAS не установлены и не настроены, может появиться сообщение об ошибке: If you attempt to activate a service using WAS for Non-HTTP activation and you have not installed and configured WAS you may see the following error:
Если появилось это сообщение об ошибке, убедитесь, что установлены и правильно настроены службы WAS для активации по протоколу, отличному от HTTP. If you see this error ensure WAS for Non-HTTP Activation is installed and configured properly. Дополнительные сведения см. в разделе инструкции. Установка и настройка компонентов активации WCF. For more information, see How to: Install and Configure WCF Activation Components.
Построение службы WCF, использующей WAS для активации по протоколу, отличному от HTTP Building a WCF Service That Uses WAS for Non-HTTP activation
После выполнения действий по установке и настройке WAS (см. раздел как установить и настроить компоненты активации WCF) Настройка службы для использования была выполнена для активации аналогично настройке службы, размещенной в службах IIS. Once you perform the steps to install and configure WAS (see How to: Install and Configure WCF Activation Components), configuring a service to use WAS for activation is similar to configuring a service that is hosted in IIS.
Подробные инструкции по созданию активированной службы WCF см. в разделе как разместить службу WCF в WAS. For detailed instructions about building a WAS-activated WCF service, see How to: Host a WCF Service in WAS.