WAS-AktivierungsarchitekturWAS Activation Architecture

In diesem Thema werden die einzelnen Komponenten des Windows-Prozessaktivierungsdiensts (auch WAS genannt) aufgeführt und erläutert.This topic itemizes and discusses the components of the Windows Process Activation Service (also known as WAS).

AktivierungskomponentenActivation Components

WAS umfasst mehrere Architekturkomponenten:WAS consists of several architectural components:

  • Listeneradapter.Listener adapters. Windows-Dienste, die Nachrichten über bestimmte Netzwerkprotokolle empfangen und mit WAS kommunizieren, leiten eingehende Nachrichten an den richtigen Arbeitsprozess weiter.Windows services that receive messages on specific network protocols and communicate with WAS to route incoming messages to the correct worker process.

  • WAS.WAS. Der Windows-Dienst, der die Erstellung und die Lebensdauer von Arbeitsprozessen verwaltet.The Windows service that manages the creation and lifetime of worker processes.

  • Die ausführbare Datei für generische Arbeitsprozesse (w3wp.exe).The generic worker process executable (w3wp.exe).

  • Anwendungs-ManagerApplication manager. Verwaltet die Erstellung und die Lebensdauer der Anwendungsdomänen, die innerhalb des Arbeitsprozesses als Host von Anwendungen fungieren.Manages the creation and lifetime of application domains that host applications within the worker process.

  • Protokollhandler.Protocol handlers. Protokollspezifische Komponenten, die im Arbeitsprozess ausgeführt werden und die Kommunikation zwischen Arbeitsprozess und den einzelnen Listeneradaptern verwalten.Protocol-specific components that run in the worker process and manage communication between the worker process and the individual listener adapters. Es sind zwei Typen von Protokollhandlern verfügbar: Prozessprotokollhandler und AppDomain-Protokollhandler.Two types of protocol handlers exist: process protocol handlers and AppDomain protocol handlers.

Wenn WAS eine Arbeitsprozessinstanz aktiviert, werden die erforderlichen Prozessprotokollhandler in den Arbeitsprozess geladen, und mit dem Anwendungs-Manager wird eine Anwendungsdomäne erstellt, in der die Anwendung gehostet wird.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. Die Anwendungsdomäne lädt sowohl den Anwendungscode als auch die AppDomain-Protokollhandler, die für die von der Anwendung verwendeten Netzwerkprotokolle erforderlich sind.The application domain loads the application’s code as well as the AppDomain protocol handlers that the network protocols used by the application require.

WAS-ArchitekturWAS Architecture

ListeneradapterListener Adapters

Listeneradapter sind einzelne Windows-Dienste, welche für die Netzwerkprotokolle, bei denen sie lauschen, die Netzwerkprotokolllogik zum Empfang von Nachrichten implementieren.Listener adapters are individual Windows services that implement the network communication logic used to receive messages using the network protocol on which they listen. Die folgende Tabelle enthält die Listeneradapter für Windows Communication Foundation (WCF)-Protokolle.The following table lists the listener adapters for Windows Communication Foundation (WCF) protocols.

Dienstname des ListeneradaptersListener adapter service name ProtokollProtocol HinweiseNotes
W3SVCW3SVC httphttp Allgemeine Komponente, die HTTP-Aktivierung für IIS 7.0 und WCF bereitstellt.Common component that provides HTTP activation for both IIS 7.0 and WCF.
NetTcpActivatorNetTcpActivator net.tcpnet.tcp Hängt vom NetTcpPortSharing-Dienst ab.Depends on the NetTcpPortSharing service.
NetPipeActivatorNetPipeActivator net.pipenet.pipe
NetMsmqActivatorNetMsmqActivator net.msmqnet.msmq Für die Verwendung mit WCF-basierte Message Queuing-Anwendungen.For use with WCF-based Message Queuing applications.
NetMsmqActivatorNetMsmqActivator msmq.formatnamemsmq.formatname Stellt Abwärtskompatibilität mit vorhandenen Message Queuing-Anwendungen bereit.Provides backwards compatibility with existing Message Queuing applications.

Listeneradapter für bestimmte Protokolle werden während der Installation in der Datei applicationHost.config registriert. Dies wird im folgenden XML-Beispiel veranschaulicht.Listener adapters for specific protocols are registered during installation in the applicationHost.config file, as shown in the following XML example.

<system.applicationHost>  
    <listenerAdapters>  
        <add name="http" />  
        <add name="net.tcp"   
          identity="S-1-5-80-3579033775-2824656752-1522793541-1960352512-462907086" />  
         <add name="net.pipe"   
           identity="S-1-5-80-2943419899-937267781-4189664001-1229628381-3982115073" />  
          <add name="net.msmq"   
            identity="S-1-5-80-89244771-1762554971-1007993102-348796144-2203111529" />  
           <add name="msmq.formatname"   
             identity="S-1-5-80-89244771-1762554971-1007993102-348796144-2203111529" />  
    </listenerAdapters>  
</system.applicationHost>  

ProtokollhandlerProtocol Handlers

Prozess- und AppDomain-Protokollhandler für bestimmte Protokolle werden in der Datei Web.config auf Computerebene registriert.Process and AppDomain protocol handlers for specific protocols are registered in the machine-level Web.config file.

<system.web>  
   <protocols>  
      <add name="net.tcp"   
        processHandlerType=  
         "System.ServiceModel.WasHosting.TcpProcessProtocolHandler"  
        appDomainHandlerType=  
         "System.ServiceModel.WasHosting.TcpAppDomainProtocolHandler"  
        validate="false" />  
      <add name="net.pipe"   
        processHandlerType=  
         "System.ServiceModel.WasHosting.NamedPipeProcessProtocolHandler"  
          appDomainHandlerType=  
           "System.ServiceModel.WasHosting.NamedPipeAppDomainProtocolHandler"/>  
      <add name="net.msmq"  
        processHandlerType=  
         "System.ServiceModel.WasHosting.MsmqProcessProtocolHandler"  
        appDomainHandlerType=  
         "System.ServiceModel.WasHosting.MsmqAppDomainProtocolHandler"  
        validate="false" />  
   </protocols>  
</system.web>  

Siehe auchSee Also

Konfigurieren von WAS für die Verwendung mit WCFConfiguring WAS for Use with WCF
Windows Server AppFabric-HostingfunktionenWindows Server App Fabric Hosting Features