Diagramma dell'architettura

AppFabric rappresenta un'evoluzione del servizio Attivazione processo Windows (WAS) e del ruolo Server applicazioni in Windows Server per ospitare e gestire i servizi WCF e WF. Per questo motivo, AppFabric è strettamente allineato con .NET Framework 4 e utilizza diverse funzioni fornite nell'ambito delle funzionalità chiave dell'offerta Framework come salvataggio permanente, monitoraggio e hosting dei servizi WCF e WF. AppFabric inoltre si integra con Internet Information Services (IIS) mettendo a disposizione strumenti di gestione e monitoraggio nella console di gestione di IIS.

Lo schema dell'architettura riportato di seguito illustra le parti di AppFabric nonché i componenti .NET Framework 4 e IIS utilizzati da AppFabric:

Illustrazione della panoramica dell'architettura

Il presente argomento viene esaminata l'architettura di AppFabric fornendo ulteriori dettagli su ciascuna delle tecnologie descritte nello schema.

Potenziamento del servizio Attivazione processi di Windows

Poiché lo schema dell'architettura mostra le tecnologie di base su cui si fonda AppFabric, si può iniziare esaminando IIS e WAS.

IIS e WAS

AppFabric si basa sull'affidabile ambiente di hosting fornito da IIS e WAS. Le applicazioni di hosting all'interno di WAS offrono varie funzionalità di grande interesse per un'architettura orientata ai servizi (SOA, service-oriented architecture), quali:

  • Attivazione delle applicazioni basata su messaggi, che consente l'avvio e l'arresto dinamico delle applicazioni in risposta ai messaggi in ingresso.

  • Riciclo affidabile di processi di applicazione e di lavoro, per mantenere l'integrità delle applicazioni in esecuzione.

  • Configurazione e gestione delle applicazioni.

  • Organizzazione delle applicazioni in siti, per scopi di indirizzamento e gestione. In fase di esecuzione, le applicazioni vengono associate a pool di applicazioni che definiscono i vincoli del processo di esecuzione.

Per tutte le funzionalità disponibili; tuttavia distribuzione, gestione e monitoraggio dei servizi WCF e WF non sono indirizzati e il carico di questo aspetto ricade sullo sviluppatore dell'applicazione, che deve fornire un veicolo per la distribuzione, una guida per la gestione e soluzioni di monitoraggio personalizzate. Inoltre risulta complesso ospitare processi a lunga esecuzione come il flusso di lavoro di IIS e WAS a causa dell'attivazione su richiesta e del riciclo dei processi. Il salvataggio permanente dello stato e l'attivazione dell'host devono essere configurati esplicitamente dallo sviluppatore, se richiesti dall'applicazione. AppFabric consente di risolvere questi problemi grazie a strumenti e servizi che permettono di distribuire e monitorare facilmente le applicazioni, nonché di configurare le funzionalità dell'ambiente di hosting.

Servizi e componenti in fase di esecuzione

AppFabric offre servizi quali il salvataggio permanente dello stato di un flusso di lavoro a lunga esecuzione in un archivio di salvataggio permanente, il routing basato sul contenuto e l'attivazione in base alla configurazione.

ASP.NET

Molte delle funzionalità di base che rendono interessante l'ambiente di hosting WAS, come domini applicazione, gestione del ciclo di vita, monitoraggio dell'integrità, sistema di configurazione comune e compilazione dinamica vengono forniti da ASP.NET. ASP.NET inoltre offre un'attivazione basata su messaggi per i servizi WCF e WF che ricevono messaggi tramite HTTP.

WCF e WF

I servizi WCF e WF rappresentano gli elementi fondamentali per creare le applicazioni SOA e AppFabric si concentra su tali servizi. WCF rende disponibile un modello di programmazione unificato per lo sviluppo di applicazioni SOA che comunicano tramite Web, inclusa l'interoperabilità con applicazioni realizzate mediante altre tecnologie. WF fornisce un motore di flusso di lavoro utilizzabile per implementare processi a lunga esecuzione.

Per ulteriori informazioni su WCF e WF, vedere Windows Communication Foundation e Windows Workflow Foundation.

Database di runtime

Quando si implementa il salvataggio permanente dello stato per eseguire le applicazioni o acquisire informazioni di monitoraggio, uno dei primi aspetti da considerare è il supporto di archiviazione per i dati. È particolarmente importante per le applicazioni SOA che questo archivio dati sia affidabile, protetto, scalabile e ad alta disponibilità. Poiché le applicazioni possono comprendere componenti in esecuzione su più server in una farm, l'archivio dati deve essere facilmente accessibile anche da più server contemporaneamente.

Per soddisfare questi criteri, in un archivio dati di AppFabric vengono archiviate tutte le informazioni di salvataggio permanente e monitoraggio.

Nota

Per impostazione predefinita, i dati di monitoraggio e quelli di salvataggio permanente vengono archiviati nello stesso database. Tuttavia è possibile ripartire i dati in database separati o creare database aggiuntivi di salvataggio permanente e monitoraggio per applicazioni specifiche.

Per ulteriori informazioni sui database utilizzati da AppFabric, vedere Amministrazione di database.

Salvataggio permanente

Una delle sfide associate all'hosting di un'applicazione è garantire che questa sia in grado di resistere a eventi come errori o riavvii del sistema. AppFabric a tale scopo utilizza un provider salvataggi permanenti che consente di salvare lo stato dei servizi WF nel database di salvataggio permanente e riprenderne l'esecuzione in un sistema integro quando si verifica un errore o un riavvio del sistema.

Oltre a offrire resistenza ai guasti o ai riavvii del sistema, i servizi WF a lunga esecuzione possono venire sospesi durante la normale esecuzione allo scopo di liberare risorse per altre applicazioni e riprendere il funzionamento quando si riceve un messaggio che deve essere elaborato da un'istanza di salvataggio permanente di flusso di lavoro. Inoltre i servizi WF possono essere attivati per riprendere dopo un intervallo definito grazie a un timer durevole che monitora l'indicatore “esegui a” sulle istanze WF permanenti e riprende l'esecuzione dell'istanza.

Per ulteriori informazioni sul salvataggio permanente, vedere Concetti di salvataggio permanente.

Hosting

AppFabric integra gli ambienti di hosting ServiceHost (host WCF) e WorkflowServiceHost (host WF) con IIS e WAS. Ad esempio, entrambi gli host partecipano alla chiusura e al riciclo normali di appDomain, nonché ai processi di avvio automatico dell'applicazione. Nonostante la funzionalità combinata di IIS e WAS offra un affidabile ambiente di hosting per le applicazioni WCF e WF, per avvantaggiarsi di queste funzionalità spesso occorre un grande impegno da parte dello sviluppatore per distribuire e configurare un'applicazione. AppFabric rende disponibile un set completo di strumenti che consentono di configurare le applicazioni in modo standard, senza la necessità di soluzioni di distribuzione personalizzate o procedure di configurazione manuale.

Per ulteriori informazioni sull'utilizzo delle tecnologie IIS e WAS in AppFabric, vedere Concetti di hosting.

Monitoraggio

Data la natura distribuita e scarsamente associata delle soluzioni realizzate con i servizi WCF e WF, il monitoraggio e la risoluzione dei problemi spesso rappresentano fasi complesse e delicate che richiedono di visualizzare ciascun singolo servizio e di associare manualmente gli eventi osservati a tali servizi allo scopo di ottenere una visione complessiva di ciò che accade nell'applicazione. Con AppFabric, gli eventi vengono raccolti e correlati da varie fonti per ottenere una visione olistica dell'esecuzione di un processo attivo. I dati vengono archiviati in un database nel quale possono essere recuperati utilizzando gli strumenti di monitoraggio presenti nella console di Gestione IIS o i cmdlet Modulo ApplicationServer per Windows PowerShell.

Per ulteriori informazioni sul monitoraggio, vedere Concetti di monitoraggio.

Gestione delle API

Per supportare una vasta gamma di scenari di gestione, AppFabric consente di accedere a tutte le funzioni di gestione mediante Modulo ApplicationServer per Windows PowerShell come cmdlet. Questa implementazione offre vari modi di utilizzare le funzionalità di gestione, come richiamare i cmdlet interattivamente dalla shell della riga di comando Windows PowerShell, creare script che richiamano i cmdlet o richiamare i cmdlet da un'applicazione personalizzata.

Per ulteriori informazioni, vedere Strumenti di gestione.

Gestione IIS

Allo scopo di fornire una gestione e una configurazione centralizzate dei servizi WF e WCF, AppFabric mette a disposizione un set completo di strumenti di gestione e monitoraggio per i servizi WCF e WF all'interno di Gestione IIS. AppFabric utilizza inoltre MSDeploy per distribuire servizi nell'ambiente di hosting WAS. MSDeploy può essere utilizzato per distribuire applicazioni contenenti servizi WCF e WF.

Nota

Tutte le funzionalità presenti nella console di Gestione IIS si basano su Modulo ApplicationServer per Windows PowerShell e vengono implementate come cmdlet di Windows PowerShell. Tutte le attività eseguite nell'interfaccia utente di AppFabric possono quindi essere oggetto di script.

Per ulteriori informazioni sulle estensioni di AppFabric per Gestione IIS, vedere Strumenti di gestione.

Visual Studio

Visual Studio 2010 offre un valido ambiente di sviluppo utilizzabile per creare applicazioni che contengono servizi WCF e WF. Visual Studio 2010 inoltre supporta la verifica diretta dei servizi in AppFabric mediante il tasto F5 e consente di creare pacchetti di distribuzione per il progetto che possono essere importati direttamente con MSDeploy in un ambiente AppFabric.

Per ulteriori informazioni su Visual Studio 2010, vedere Visual Studio 2010 (informazioni in lingua inglese). Per ulteriori informazioni sull'utilizzo di Visual Studio 2010 con AppFabric, vedere i seguenti argomenti:

Vedere anche

Concetti

Panoramica dell'architettura

  2011-12-05