Funzioni e funzionalità

Le funzionalità di hosting di Windows Server AppFabric consentono di migliorare l'hosting dei servizi .NET Framework versione 4, Windows Communication Foundation (WCF) e Windows Workflow Foundation (WF) nel servizio Attivazione processo Windows (WAS) grazie alle seguenti caratteristiche:

  • Distribuzione e gestione semplificate dei servizi WCF e WF ospitati in WAS

  • Configurazione semplificata del salvataggio permanente per flussi di lavoro permanenti

  • Profili di rilevamento personalizzabili che consentono di acquisire unicamente i dati necessari

  • Archiviazione dedicata e permanente per i dati rilevati

  • Cmdlet di Windows Powershell che consentono di creare script di gestione personalizzati

  • Monitoraggio personalizzabile dei servizi ospitati

  • Supporto del protocollo IPv6 attraverso lo stack IPv6 di Windows

  • Avvio automatico delle applicazioni per ridurre la latenza dei servizi

    Nota

    Per questa funzionalità è necessario che nel computer sia installato Windows Server 2008 R2 o Windows® 7.

Le funzionalità di cache di AppFabric forniscono una piattaforma distribuita di cache in memoria per lo sviluppo di applicazioni scalabili, disponibili e altamente performanti. Di seguito vengono illustrate le caratteristiche principali delle funzionalità di cache di AppFabric.

  • Memorizzazione nella cache di qualsiasi oggetto CLR serializzabile e accesso mediante semplici richieste API

  • Supporto per grandi organizzazioni, con decine di migliaia di computer

  • Configurabile per l'esecuzione come servizio cui accedere tramite rete

  • Supporto per le configurazioni della cache più comuni

  • Supporto per il ridimensionamento dinamico mediante aggiunta di nuovi nodi

  • Funzionalità di disponibilità elevata che fornisce la disponibilità ininterrotta dei dati memorizzati nella cache, grazie all'archiviazione di copie dei dati in host della cache separati

  • Bilanciamento del carico automatico

  • Integrazione con strumenti di amministrazione e di monitoraggio, quali Traccia eventi per Windows (ETW) e System Center.

  • Stretta integrazione con ASP.NET per consentire la memorizzazione nella cache dei dati delle sessioni ASP.NET senza che sia necessaria alcuna scrittura nei database di origine. AppFabric può inoltre essere utilizzato per la memorizzazione nella cache dei dati delle applicazioni per l'intera Web farm.

Configurazioni e scenari non supportati

.NET Framework 4 consente di definire i servizi di flusso di lavoro tramite XAML (eXtensible Application Markup Language). AppFabric è appositamente progettato per l'interazione con i servizi di flusso di lavoro di .NET Framework 4, inclusi quelli attivati tramite un file SVC oppure utilizzando la nuova funzionalità di attivazione basata sulla configurazione che consente di attivare un servizio Web senza file SVC. Per ulteriori informazioni sull'argomento, vedere Attivazione basata sulla configurazione. Per ulteriori informazioni sulla definizione di un flusso di lavoro come servizio tramite XAML, vedere Servizi WCF e WF in .NET Framework 4 e "Dublin".

Tuttavia, i servizi WCF e WF ospitati in Servizio Attivazione processo Windows offrono le seguenti opzioni di configurazione e attivazione dei servizi non supportate da AppFabric.

  • I servizi che fanno parte di un'applicazione Web precompilata non sono supportati. La precompilazione è un meccanismo utilizzato da ASP.NET per il miglioramento delle prestazioni dei siti Web. Quando le risorse di un'applicazione Web vengono rilevate dal compilatore ASP.NET alla prima richiesta, il contenuto dei tipi di file comuni utilizzati per l'attivazione (ad esempio ASPX o SVC) viene compilato in un assembly e viene quindi sostituito con testo generato automaticamente. In questo modo, il file continua a essere il punto di ingresso fisico dell'attivazione (e l'URL) anche se il relativo contenuto non è più necessario. L'analisi del contenuto del file SVC consente agli strumenti di AppFabric di individuare e gestire la configurazione dei servizi. Dopo la sostituzione del contenuto di SVC con testo generato automaticamente dal compilatore ASP.NET, non sarà più possibile utilizzare AppFabric per elencare e gestire tali servizi. Come specificato in precedenza, in Windows Server AppFabric continuerà a funzionare un servizio di flusso di lavoro di .NET Framework 4 definito tramite XAML che fa parte di un'applicazione ASP.NET precompilata. Per ulteriori informazioni, vedere la sezione relativa alla precompilazione di siti Web di ASP.NET.

  • I servizi registrati e attivati in fase di esecuzione utilizzando la funzionalità RouteTable.Routes.Add() non sono supportati. La classe RouteTable di .NET Framework consente di memorizzare le route di URL relative a un'applicazione. Durante la gestione di una richiesta, un'applicazione ASP.NET scorre la raccolta delle route presenti nella proprietà Routes per individuare la prima route corrispondente al formato della richiesta di URL. Per ulteriori informazioni, vedere Classe RouteTable.

    Nota

    L'utilizzo della classe RouteTable per la registrazione dei servizi costituisce un modello comune per i servizi RESTful che richiedono i tradizionali URL di tipo REST, ad esempio https://server/AutoService/Car/123-345-678.

Funzionalità di hosting di AppFabric

Basate sul servizio Attivazione processo Windows (WAS), le funzionalità di hosting di AppFabric forniscono l'ambiente host per i servizi WCF e WF ed estendono la Console di gestione IIS con l'inclusione di strumenti per la gestione e la configurazione dei servizi ospitati da WAS. Se sono già presenti servizi WCF o WF ospitati in WAS, i servizi di hosting di AppFabric consentono di enumerare e gestire tali servizi. Tuttavia, se i servizi sono ospitati in un servizio Windows gestito o in un'applicazione autonoma, prima di poter utilizzare le funzionalità di hosting di AppFabric con tali servizi è necessario effettuare la migrazione dei servizi stessi all'ambiente di hosting WAS.

Se si stanno correntemente ospitando servizi in un host diverso da WAS, è consigliabile una attenta valutazione delle funzionalità di AppFabric, così come di quelle dell'ambiente di hosting di WAS, prima di decidere se spostare i servizi a WAS. Per ulteriori informazioni sulle opzioni di hosting per servizi WCF e WF, vedere l'argomento relativi ai servizi di hosting (https://go.microsoft.com/fwlink/?LinkId=166423, la pagina potrebbe essere in inglese).

Distribuzione delle applicazioni

I metodi correnti di distribuzione delle applicazioni prevedono l'utilizzo di Xcopy o di pacchetti di distribuzione basati su tecnologie quali Windows Installer. Xcopy consente di spostare elementi applicativi dalla cartella corrispondente a una directory virtuale a una cartella di destinazione. Per la distribuzione di elementi aggiuntivi, ad esempio certificati, account utente associati a un pool di applicazioni, impostazioni del Registro di sistema e dati di database, vengono utilizzati pacchetti di distribuzione aggiuntivi. Mentre le tecnologie di distribuzione esistenti sono più che adeguate per distribuzioni su server singolo, Xcopy è spesso troppo semplice, mentre la creazione di un pacchetto di Windows Installer è invece un'operazione spesso molto complessa, che può richiedere specifiche competenze da sviluppatore per poter essere effettuata. Nessuno dei due metodi è particolarmente adatto per la distribuzione di un servizio in una server farm con modalità di scalabilità orizzontale.

Lo strumento di distribuzione Web di IIS, MSDeploy, fornisce semplici funzionalità di distribuzione basata su pacchetti che possono essere utilizzate dalla riga di comando, dalla Console di gestione IIS o da Visual Studio 2010. MSDeploy può essere inoltre utilizzato per la sincronizzazione di un computer con un altro.

Per ulteriori informazioni su MSDeploy, vedere la sezione relativa allo strumento di distribuzione Web per IIS 7 (https://go.microsoft.com/fwlink/?LinkId=127069).

Configurazione delle applicazioni

Un componente chiave per la gestione delle applicazioni è rappresentato dalla possibilità di applicare opzioni di configurazione che influiscono sul comportamento delle applicazioni senza modificare il codice sottostante. In AppFabric sono fornite le seguenti funzionalità per la configurazione di applicazioni e servizi ospitati:

Configurazione delle applicazioni semplificata. Il principio guida adottato per le funzionalità di hosting di AppFabric è quello che soltanto le impostazioni di configurazione presenti nei file Web.config vengano utilizzate a scopo amministrativo. Le impostazioni definite nel codice sorgente non sono accessibili e non possono essere modificate dagli strumenti di amministrazione di AppFabric. Tale principio si applica sia a codice di tipo imperativo, ad esempio C#, che a codice dichiarativo, ad esempio XAML. Anche qualora il codice in sé stesso sia facilmente visualizzabile, come nel caso di XAML, le impostazioni sono comunque considerate bloccate e pertanto inaccessibili.

Per semplificare la gestione della configurazione, AppFabric applica impostazioni predefinite a ciascun nodo server configurato dal programma di installazione. Tali impostazioni vengono definite nel file Web.config radice e possono essere utilizzate da qualsiasi applicazione ospitata. Gli amministrazioni sono inoltre in grado di applicare impostazioni di configurazione specifiche per il sito o per l'applicazione, tramite il file Web.config relativo al sito o all'applicazione in questione, in modo da ottenere una maggiore precisione di rilevamento o di salvataggio permanente per le applicazioni ospitate.

Opzioni di configurazione WCF fornite tramite la Console di gestione IIS. L'attuale configurazione di WCF mediante WCF l'Editor configurazione servizi (SvcConfigEditor.exe) presenta svantaggi tanto per gli sviluppatori come per i professionisti IT. In particolare, l'utilizzo dell'Editor configurazione servizi richiede un livello di conoscenza approfondito del modello di servizi WCF, che comporta un sovraccarico aggiuntivo per i professionisti IT.

AppFabric offre un miglioramento di questa situazione grazie all'estensione della familiare Console di gestione IIS con le estensioni di Gestione IIS per WCF w WF per portare a termine le attività amministrative più comuni Alcuni esempi sono l'abilitazione della traccia, la definizione dei parametri di limitazione delle applicazioni e l'enumerazione di tutti i servizi in esecuzione. Tutte queste operazioni possono essere effettuate utilizzando le estensioni di Gestione IIS. È possibile inoltre applicare altre opzioni tramite la configurazione guidata di AppFabric o tramite l'Editor di configurazione disponibile con IIS 7.0.

Configurazione dei salvataggi permanenti WF. Per supportare il concetto dei flussi di lavoro permanenti per processi aziendali di durata prolungata, i servizi WF possono essere collocati in un archivio salvataggi permanenti e riprendere l'elaborazione in occasione di eventi specifici, ad esempio la ricezione di un messaggio. La configurazione dei salvataggi permanenti, tuttavia, è tuttora un processo in gran parte manuale che richiede la creazione di un servizio di salvataggio permanente supportato da un meccanismo di archiviazione durevole.

Al fine di semplificare la configurazione dei salvataggi permanenti dei flussi di lavoro, e per supportare la configurazione dei server farm, i servizi di hosting di AppFabric forniscono un archivio di salvataggio permanente basato su SQL nonché un provider di salvataggio permanente che può essere utilizzato da qualsiasi flusso di lavoro durevole ospitato all'interno di WAS. AppFabric consente inoltre di utilizzare un archivio e un provider di salvataggio permanente personalizzati scelti in base alle proprie esigenze. AppFabric consente di configurare impostazioni predefinite di salvataggio permanente, ereditate da tutte le applicazioni ospitate, oppure impostazioni di salvataggio permanente specifiche per applicazioni individuali.

Cmdlet di Windows PowerShell. Sebbene la presenza di opzioni di configurazione e gestione all'interno della Console di gestione IIS consenta una facile amministrazione delle applicazioni ospitate, risulta spesso desiderabile creare script che automatizzino gli scenari di configurazione e di gestione che richiedono numerosi passaggi.

Per supportare la creazione di soluzioni di scripting, le funzionalità di hosting di AppFabric includono il modulo ApplicationServer per Windows Powershell, che contiene cmdlet in grado di fornire lo stesso livello di accesso alla configurazione e alla gestione delle applicazioni ospitate offerte dagli strumenti forniti nella Console di gestione IIS.

Monitoraggio delle applicazioni

In aggiunta alla semplificazione della distribuzione, della gestione e della configurazione dei servizi ospitati, i servizi di hosting di AppFabric semplificano il monitoraggio delle applicazioni mediante l'acquisizione di informazioni di traccia create in fase di esecuzione e la relativa archiviazione nel database di monitoraggio. Una volta acquisite, queste informazioni sono disponibili nel Dashboard della Console di gestione IIS o direttamente dal database di monitoraggio.

Le informazioni raccolte da un'applicazione possono essere personalizzate tramite l'utilizzo di profili di rilevamento per acquisire informazioni quali lo stato di attività (avvio, arresto, errore), i contenuti di variabili specifiche all'interno di un flusso di lavoro o informazioni di rilevamento personalizzate create dall'applicazione tramite l'impiego di un record di rilevamento personalizzato.

Hosting di applicazioni

I servizi di hosting di AppFabric funzionano insieme a WAS per fornire un solito ambiente di hosting per applicazioni WCF e WF di livello intermedio. Di seguito vengono indicate alcune delle funzionalità fornite da WAS:

  • Attivazione di applicazioni e processi di lavoro basata sui messaggi. Le applicazioni vengono avviate e arrestate dinamicamente in risposta a elementi di lavoro trasmessi tramite protocolli di rete HTTP e non HTTP.

  • Solido riciclo di applicazioni e processi di lavoro per salvaguardare l'integrità delle applicazioni in esecuzione.

  • Configurazione e gestione centralizzate delle applicazioni.

Oltre alle funzionalità tradizionalmente fornite da WAS, .NET Framework 4 fornisce miglioramenti nell'ambito dell'attivazione di un servizio ospitato. L'attivazione di un servizio creato utilizzando .NET Framework 3.5 richiede la creazione di un "file di servizio" separato (con estensione svc) che deve essere distribuito insieme al servizio. Inoltre, se il servizio utilizza WF, è necessario creare e distribuire insieme al servizio un file Extensible Application Markup Language (XAML) aggiuntivo (con estensione xaml). .NET Framework 4 prevede l'attivazione diretta di un servizio WF senza che sia necessario creare e distribuire un file svc aggiuntivo. Il file XAML deve avere l'estensione xamlx per supportare l'attivazione diretta dell'applicazione WF associata da parte dell'host. Sia le applicazioni WCF che WF possono essere attivate direttamente dal file Web.config senza necessità di utilizzare un file svc separato. Per ulteriori informazioni su questa e altre funzionalità dell'ambiente di hosting WAS, vedere l'argomento relativo all'hosting (https://go.microsoft.com/fwlink/?LinkId=166403, la pagina potrebbe essere in inglese).

Sebbene l'attivazione semplificata di un servizio ospitato elimini la necessità di un file di servizio, non viene contemplata la meccanica dell'attivazione basata sui messaggi utilizzata da WAS. Quando un servizio è ospitato in WAS, non viene creata alcuna istanza del servizio fino al ricevimento di un messaggio indirizzato al servizio stesso. Questo significa che se un servizio viene avviato, deve inizializzare una nuova istanza, ad esempio allocando memoria, caricando librerie e creando oggetti. Se l'applicazione in uso elabora dati i cui tempi di risposta sono importanti, questo ritardo nell'avvio di servizi specifici potrebbe risultare inaccettabile. Anche qualora non si elaborino dati i cui tempi di risposta sono importanti, questa dipendenza dall'attivazione basata sui messaggi impone dei limiti sul modo in cui il servizio può ricevere i dati, in quanto l'attivazione basata sui messaggi richiede un attivatore WAS. .NET fornisce un attivatore pronto all'uso per i protocolli seguenti:

  • http: attivazione HTTP per IIS 7.0 e WCF.

  • net.tcp: attivazione TCP basata sulle porte.

  • net.pipe: attivazione basata named pipe.

  • net.msmq: utilizzato con applicazioni di accodamento messaggi (MSMQ) basate su WCF.

  • msmq.formatname: fornisce compatibilità relativa alle versioni precedenti di applicazioni MSMQ esistenti.

Per superare le limitazioni dell'attivazione basata sui messaggi, i servizi di hosting di AppFabric possono sfruttare la funzionalità di avvio automatico di IIS fornita in Windows Server 2008 R2 e Windows 7 per avviare automaticamente il servizio ospitato in WAS non appena distribuito, anziché attendere l'arrivo di un messaggio di attivazione.

Funzionalità di cache di AppFabric

Il servizi di cache di AppFabric distribuiscono memoria su più computer per fornire alle applicazioni un'unica visualizzazione unificata della cache. Le applicazioni possono archiviare qualsiasi oggetto CLR serializzabile senza che sia necessario preoccuparsi dell'ubicazione di archiviazione di tale oggetto. La scalabilità può essere ottenuta semplicemente aggiungendo altri computer su richiesta. I servizi di memorizzazione nella cache di AppFabric consentono inoltre di effettuare copie dei dati da archiviare nel cluster, proteggendo in questo modo i dati dagli errori. I servizi di memorizzazione nella cache di AppFabric includono un oggetto provider di sessione ASP.NET che consente l'archiviazione di oggetti di sessione ASP.NET nella cache distribuita senza bisogno di scrivere dati nei database. Ciò aumenta notevolmente le prestazioni e la scalabilità delle applicazioni ASP.NET.

Per ulteriori informazioni sulle funzionalità di memorizzazione nella cache di AppFabric, vedere l'argomento relativo all'introduzione alle operazioni di memorizzazione nella cache con Windows Server AppFabric (https://go.microsoft.com/fwlink/?LinkId=164828, la pagina potrebbe essere in inglese).

  2011-12-05