WAS aktiválási architektúra
Ez a témakör a Windows folyamataktiválási szolgáltatás (más néven WAS) összetevőit ismerteti és ismerteti.
Aktiválási összetevők
A WAS több architekturális összetevőből áll:
Figyelőadapterek. Azok a Windows-szolgáltatások, amelyek bizonyos hálózati protokollokon fogadnak üzeneteket, és kommunikálnak a WAS-val, hogy a bejövő üzeneteket a megfelelő feldolgozói folyamathoz irányítják.
VOLT. A feldolgozói folyamatok létrehozását és élettartamát kezelő Windows-szolgáltatás.
Az általános feldolgozói folyamat végrehajtható (w3wp.exe).
Alkalmazáskezelő. A feldolgozó folyamaton belül alkalmazásokat üzemeltető alkalmazástartományok létrehozását és élettartamát kezeli.
Protokollkezelők. Protokollspecifikus összetevők, amelyek a feldolgozói folyamatban futnak, és kezelik a munkavégző folyamat és az egyes figyelőadapterek közötti kommunikációt. A protokollkezelőknek két típusa létezik: a folyamatprotokoll-kezelők és az AppDomain protokollkezelők.
Amikor a WAS aktivál egy feldolgozói folyamatpéldányt, betölti a feldolgozó folyamatba szükséges folyamatprotokoll-kezelőket, és az alkalmazáskezelővel létrehoz egy alkalmazástartományt az alkalmazás üzemeltetéséhez. Az alkalmazás tartománya betölti az alkalmazás kódját, valamint az appDomain protokollkezelőket, amelyeket az alkalmazás által használt hálózati protokollok igényelnek.
Figyelőadapterek
A figyelőadapterek olyan különálló Windows-szolgáltatások, amelyek az üzenetek fogadásához használt hálózati kommunikációs logikát implementálják azzal a hálózati protokolllal, amelyen figyelnek. Az alábbi táblázat a Windows Communication Foundation (WCF) protokollok figyelőadaptereit sorolja fel.
Figyelőadapter szolgáltatás neve | Protokoll | Jegyzetek |
---|---|---|
W3SVC | http | Gyakori összetevő, amely HTTP-aktiválást biztosít az IIS 7.0-hoz és a WCF-hez is. |
NetTcpActivator | net.tcp | A NetTcpPortSharing szolgáltatástól függ. |
NetPipeActivator | net.pipe | |
NetMsmqActivator | net.msmq | WCF-alapú Message Queuing-alkalmazásokkal való használatra. |
NetMsmqActivator | msmq.formatname | Visszamenőleges kompatibilitást biztosít a meglévő Message Queuing-alkalmazásokkal. |
Az adott protokollok figyelőadaptereit az applicationHost.config fájlban való telepítés során regisztráljuk, ahogy az alábbi XML-példában is látható.
<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>
Protokollkezelők
Az egyes protokollok folyamat- és AppDomain protokollkezelői a gépszintű Web.config fájlban vannak regisztrálva.
<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>