Hosten in Internetinformationsdiensten
Eine Option für das Hosten von Windows Communication Foundation (WCF)-Diensten ist das Hosten innerhalb einer Internetinformationsdienste (IIS)-Anwendung. Dieses Hostmodell ist dem Modell ähnlich, das von ASP.NET- und ASP.NET-Webdiensten (ASMX) verwendet wird.
Versionen von IIS
WCF kann in folgenden Versionen von IIS unter folgenden Betriebssystemen gehostet werden:
IIS 5.1 unter Windows XP SP2. Diese Umgebung ist nützlich für Entwurf und Entwicklung von IIS-gehosteten Anwendungen, die später unter einem Server-Betriebssystem, beispielsweise Windows Server 2003 bereitgestellt werden.
IIS 6.0 unter Windows Server 2003. IIS 6.0 stellt ein erweitertes Prozessmodell bereit, das verbesserte Skalierbarkeit, Zuverlässigkeit und Anwendungsisolation bietet. Diese Umgebung ist für die Produktionsbereitstellung von WCF-Diensten geeignet, die ausschließlich HTTP-Kommunikation verwenden.
IIS 7.0 unter Windows Vista und Windows Server 2008. IIS 7.0 bietet das gleiche erweiterte Prozessmodell wie IIS 6.0, verwendet jedoch WAS (Windows Process Activation Service), um die Aktivierung und die Netzwerkkommunikation über andere Protokolle als HTTP zu ermöglichen. Diese Umgebung ist für die Entwicklung von WCF-Diensten geeignet, die über eines der von WCF unterstützten Netzwerkprotokolle kommunizieren (HTTP, net.tcp, net.pipe und net.msmq). Weitere Informationen über WAS finden Sie unter Hosten in WAS (Windows Process Activation Service).
Windows Server AppFabric stellt durch die Zusammenarbeit mit IIS 7.0 und dem Windows-Prozessaktivierungsdienst (WAS) eine vielseitige Anwendungshostingumgebung für NET4 WCF- und WF-Dienste bereit. Vorteile sind u. a. die Verwaltung von Prozesslebenszyklen, die Prozesswiederverwendung, freigegebenes Hosting, rascher Ausfallschutz, Verwaisen von Prozessen, die Aktivierung bei Bedarf und die Systemüberwachung. Ausführliche Informationen finden Sie unter AppFabric-Hostingfunktionen und AppFabric-Hostingkonzepte.
Vorteile des IIS-Hosting
Das Hosten von WCF-Diensten in IIS bietet mehrere Vorteile:
In IIS gehostete WCF-Dienste werden auf die gleiche Weise bereitgestellt und verwaltet wie jeder andere Typ von IIS-Anwendungen, einschließlich ASP.NET-Anwendungen und ASMX.
IIS stellt Prozessaktivierung, Systemüberwachung und Wiederverwendungsfähigkeiten bereit, um die Zuverlässigkeit der gehosteten Anwendungen zu erhöhen.
Wie ASP.NET-Dienste können sich auch in ASP.NET gehostete WCF-Dienste die Vorteile des freigegebenen ASP.NET-Hostmodells zunutze machen, bei dem sich mehrere Anwendungen für verbesserte Serverdichte und Skalierbarkeit in einem gemeinsamen Arbeitsprozess befinden.
In IIS gehostete WCF-Dienste verwenden das gleiche dynamische Kompilierungsmodell wie ASP.NET 2.0, das die Entwicklung und die Bereitstellung von gehosteten Diensten erleichtert.
Wenn Sie sich dafür entscheiden, WCF-Dienste in IIS zu hosten, müssen Sie unbedingt daran denken dass IIS 5.1 und IIS 6.0 auf HTTP-Kommunikation beschränkt sind. Weitere Informationen über zur Auswahl einer Hostumgebung finden Sie unter Hosting-Dienste.
Bereitstellen eines IIS-gehosteten WCF-Diensts
Das Entwickeln und Bereitstellen eines in IIS gehosteten WCF-Diensts umfasst die folgenden Aufgaben:
Sicherstellen, dass IIS, ASP.NET, WCF und die WCF-HTTP-Aktivierungskomponente ordnungsgemäß installiert und registriert sind.
Erstellen einer neuen IIS-Anwendung oder Wiederverwenden einer vorhandenen ASP.NET-Anwendung.
Erstellen einer SVC-Datei für den WCF-Dienst.
Bereitstellen der Dienstimplementierung für die IIS-Anwendung.
Konfigurieren des WCF-Diensts.
Eine Erörterung jeder dieser Aufgaben finden Sie unter Bereitstellen eines IIS-gehosteten WCF-Diensts.
WCF-Dienste und ASP.NET
WCF-Dienste können mit ASP.NET entweder parallel oder im ASP.NET-Kompatibilitätsmodus gehostet werden, in dem die Dienste alle Vorteile der von der ASP.NET-Webanwendungsplattform gebotenen Funktionen nutzen können. Eine Erläuterung dieser Funktionen finden Sie unter WCF-Dienste und ASP.NET.
Siehe auch
Konzepte
Erweitern des Hosting mit ServiceHostFactory
Bereitstellen eines IIS-gehosteten WCF-Diensts
WCF-Dienste und ASP.NET
Empfohlene Vorgehensweisen für das Hosten in Internetinformationsdiensten
Konfigurieren von Internetinformationsdienste 7.0 für Windows Communication Foundation