Condividi tramite


Host in Internet Information Services

Un'opzione per l'hosting di servizi Windows Communication Foundation (WCF) si trova all'interno di un'applicazione Internet Information Services (IIS). Questo modello di hosting è simile al modello usato da ASP.NET e dai servizi Web ASP.NET (ASMX).

Versioni di IIS

WCF può essere ospitato nelle seguenti versioni di IIS sui sistemi operativi elencati di seguito:

  • IIS 5.1 in Windows XP SP2. Questo ambiente è utile per la progettazione e lo sviluppo di applicazioni ospitate da IIS, successivamente distribuite in un sistema operativo server quale Windows Server 2003.

  • IIS 6.0 in Windows Server 2003. IIS 6.0 fornisce un modello di processo avanzato che offre scalabilità, affidabilità e isolamento delle applicazioni migliorati. Questo ambiente è adatto per la distribuzione di produzione di servizi WCF che usano esclusivamente la comunicazione HTTP.

  • IIS 7.0 in Windows Vista e Windows Server 2008. IIS 7.0 fornisce lo stesso modello di processo avanzato di IIS 6.0, ma usa il Servizio di attivazione dei processi di Windows (WAS) per consentire l'attivazione e la comunicazione di rete su protocolli diversi da HTTP. Questo ambiente è adatto per lo sviluppo di servizi WCF che comunicano su qualsiasi protocollo di rete supportato da WCF (inclusi HTTP, net.tcp, net.pipe e net.msmq). Per ottenere maggiori informazioni su WAS, consultare l'articolo Hosting nel servizio di attivazione dei processi di Windows.

  • Windows Server AppFabric funziona con IIS 7.0 e Servizio di attivazione dei processi di Windows (WAS) per fornire un ambiente di hosting di applicazioni avanzato per i servizi NET4 WCF e WF. Tali vantaggi includono la gestione del ciclo di vita del processo, il riciclo del processo, l'hosting condiviso, una rapida protezione dall'errore, la gestione dell'opzione orfano processo, l'attivazione su richiesta e il monitoraggio dello stato. Per ricevere ulteriori informazioni, consultare gli articoli Funzionalità di hosting di Windows Server AppFabric e Concetti di hosting di AppFabric.

Vantaggi dell'hosting IIS

L'hosting di servizi WCF in IIS offre diversi vantaggi:

  • I servizi WCF ospitati in IIS vengono distribuiti e gestiti come qualsiasi altro tipo di applicazione IIS, incluse le applicazioni ASP.NET e ASMX.

  • IIS assicura l'attivazione dei processi, la gestione dello stato e il riciclo delle funzionalità, per aumentare l'affidabilità delle applicazioni ospitate.

  • Come ASP.NET, i servizi WCF ospitati in ASP.NET possono sfruttare il modello di hosting condiviso di ASP.NET in cui sono presenti più applicazioni in un processo di lavoro comune per migliorare la densità e la scalabilità del server.

  • I servizi WCF ospitati in IIS usano lo stesso modello di compilazione dinamico di ASP.NET 2.0, che semplifica lo sviluppo e la distribuzione dei servizi ospitati.

Quando si decide di ospitare servizi WCF in IIS, è importante ricordare che IIS 5.1 e IIS 6.0 si limitano alla sola comunicazione HTTP. Per ottenere maggiori informazioni sulla scelta di un ambiente di hosting, consultare l'articolo Servizi di hosting.

Distribuire un servizio WCF ospitato in IIS

Lo sviluppo e la distribuzione di un servizio WCF ospitato in IIS prevede le attività seguenti:

  • Assicurarsi che IIS, ASP.NET, WCF e il componente di attivazione HTTP WCF siano installati e registrati correttamente.

  • Creare una nuova applicazione IIS o riutilizzare un'applicazione ASP.NET esistente.

  • Creare un file con estensione .svc per il servizio WCF.

  • Distribuire l'implementazione del servizio nell'applicazione IIS.

  • Configurare il servizio WCF.

Per ricevere una descrizione di ognuna di queste attività, consultare l'articolo Distribuzione di un servizio WCF ospitato in Internet Information Services (IIS).

Servizi WCF e ASP.NET

I servizi WCF possono essere ospitati su server in parallelo con ASP.NET o in modalità di compatibilità ASP.NET, in cui i servizi possono sfruttare appieno le funzionalità fornite dalla piattaforma dell'applicazione Web ASP.NET. Per ricevere una descrizione di queste funzionalità, consultare l'articolo Servizi WCF e ASP.NET.

Vedi anche