Architektura aktivace WAS
Toto téma uvádí a popisuje komponenty služby aktivace procesu systému Windows (označované také jako WAS).
Aktivační komponenty
WAS se skládá z několika komponent architektury:
Adaptéry naslouchacího procesu. Služby Systému Windows, které přijímají zprávy v konkrétních síťových protokolech a komunikují se systémem WAS za účelem směrování příchozích zpráv do správného pracovního procesu.
BYL. Služba Windows, která spravuje vytváření a životnost pracovních procesů.
Spustitelný soubor obecného pracovního procesu (w3wp.exe).
Správce aplikací. Spravuje vytváření a životnost domén aplikací, které hostují aplikace v rámci pracovního procesu.
Obslužné rutiny protokolu. Součásti specifické pro protokoly, které běží v pracovním procesu a spravují komunikaci mezi pracovním procesem a jednotlivými adaptéry naslouchacího procesu. Existují dva typy obslužných rutin protokolu: obslužné rutiny procesního protokolu a obslužné rutiny protokolu AppDomain.
Při aktivaci instance pracovního procesu načte obslužné rutiny protokolu procesu požadované do pracovního procesu a pomocí správce aplikace vytvoří doménu aplikace pro hostování aplikace. Doména aplikace načte kód aplikace i obslužné rutiny protokolu AppDomain, které vyžadují síťové protokoly používané aplikací.
Adaptéry naslouchacího procesu
Adaptéry naslouchacího procesu jsou jednotlivé služby systému Windows, které implementují logiku síťové komunikace používané k příjmu zpráv pomocí síťového protokolu, na kterém naslouchají. Následující tabulka uvádí adaptéry naslouchacího procesu pro protokoly WCF (Windows Communication Foundation).
Název služby adaptéru naslouchacího procesu | Protokol | Notes |
---|---|---|
W3SVC | http | Běžná komponenta, která poskytuje aktivaci HTTP pro SLUŽBU IIS 7.0 i WCF. |
NetTcpActivator | net.tcp | Závisí na službě NetTcpPortSharing. |
NetPipeActivator | net.pipe | |
NetMsmqActivator | net.msmq | Pro použitísch |
NetMsmqActivator | msmq.formatname | Poskytuje zpětnou kompatibilitu se stávajícími aplikacemi služby Řízení front zpráv. |
Adaptéry naslouchacího procesu pro konkrétní protokoly se registrují během instalace v souboru applicationHost.config, jak je znázorněno v následujícím příkladu XML.
<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>
Obslužné rutiny protokolu
Obslužné rutiny protokolu Process a AppDomain pro konkrétní protokoly jsou registrovány v souboru Web.config na úrovni počítače.
<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>