Come fare a...
Web
Come fare a...

Panoramica di Windows Azure

La piattaforma on demand di Microsoft

Pagine: 1 di 4 AvantiTop
Autore: Fabio Cozzolino - Tratto da: Windows Azure - Edizioni FAG
Acquista il libro online Windows Azure è una completa piattaforma on demand per lo sviluppo e l'integrazione di applicazioni geograficamente distribuite. In questo articolo vedremo insieme una panoramica su questo interessante prodotto di Microsoft per il cloud computing.

Introduzione a Windows Azure

Il Cloud Computing rappresenta oggi una delle maggiori opportunità di business. Aziende del calibro di Google e Amazon hanno da tempo realizzato le loro infrastrutture, proponendo vari servizi e pacchetti ad-hoc. Microsoft di certo non poteva restare a guardare e durante la Professional Developer Conference del novembre 2008 ha annunciato pubblicamente il rilascio della sua piattaforma con il nome di Windows Azure. Windows Azure rappresenta, quindi, il modo in cui Microsoft interpreta attualmente il Cloud Computing. Una completa piattaforma on demand per lo sviluppo e l'integrazione di applicazioni geograficamente distribuite, pienamente compatibile con la definizione di Platform as a Service (PaaS). La soluzione consente alle aziende di concentrare i propri sforzi, sia in termini economici sia di tempo, nella ricerca e nell'innovazione anziché sostenere i costi di gestione di un'infrastruttura hardware talvolta anche molto complessa.

Architettura di Windows Azure

L'architettura di Windows Azure è concepita e sviluppata per fornire servizi on demand basati sul cloud. L'infrastruttura è dislocata geograficamente in differenti data center posizionati negli Stati Uniti, in Europa e in Asia, ed è basata sulla virtualizzazione delle risorse fisiche, come CPU e memoria. Questo comporta vantaggi non indifferenti in termini sia di scalabilità verticale sia di scalabilità orizzontale. Nel primo caso posso decidere di aumentare le risorse a disposizione, come la CPU o la memoria, mentre nel secondo posso aumentare il numero di istanze applicative che ospitano la mia applicazione nel momento in cui ne ho effettivamente bisogno. Ad ogni modo questo non significa che abbiamo il totale controllo della o delle macchine virtuali, come avverrebbe nel caso dell'hosting, ma semplicemente che, attraverso un'interfaccia di gestione, oppure agendo sui file di configurazione, possiamo opportunamente bilanciare le risorse necessarie per far fronte al carico di richieste che la nostra soluzione deve affrontare.

Nota
Un'applicazione, in un ambiente di Cloud Computing, viene distribuita su una o più istanze applicative. Queste istanze applicative, a volte definite come nodi, non sono altro che macchine virtuali interamente gestite dalla piattaforma di Windows Azure. Più avanti vedremo l'unica eccezione a questa regola.

Windows Azure offre diverse modalità di utilizzo del cloud:

  • Windows Azure Storage Services: fornisce un'infrastruttura per l'utilizzo e la storicizzazione di dati strutturati e non strutturati;
  • Windows Azure Hosted Services: un completo ambiente di runtime per le applicazioni;
  • Windows Azure platform AppFabric: un set di servizi per la creazione di applicazioni distribuite utilizzabili anche da soluzioni ibride on-premise e nel cloud;
  • SQL Azure: una versione di SQL Server adattata per l'esecuzione in un ambiente di cloud computing.

La figura 1 illustra le diverse tipologie di servizi utilizzabili con Windows Azure. Windows Azure Fabric Controller è il sistema che internamente si occupa di gestire le risorse allocate, di monitorare i servizi attivi, di verificare che i nodi su cui distribuiamo la nostra applicazione siano correttamente in esecuzione, le attività di load balancing ecc. In sostanza il Fabric Controller è il kernel di Windows Azure, il suo cuore pulsante.


Figura 1: Windows Azure Platform

Il Fabric Controller, gestore dell'intera infrastruttura di Windows Azure così come dei servizi di Cloud Computing, è responsabile dei mantenere attivi i requisiti di:

  • disponibilità delle applicazioni;
  • distribuzione geografica;
  • scalabilità anche su grandi quantità di dati;
  • gestione delle anomalie.

Una delle caratteristiche più importanti del Cloud Computing è proprio quella di fornire un'infrastruttura dinamica, affidabile e mutevole nel tempo a seconda delle risorse necessarie per rendere efficaci i nostri applicativi. Se, per esempio, il nostro sito web necessita di maggiori risorse, perché è in crescita e deve far fronte a un maggiore carico, è sufficiente configurare l'applicazione in modo tale da richiederne l'esecuzione su un maggior numero di istanze applicative. In questo modo posso far fronte alle diverse esigenze, anche se momentanee, incrementando o decrementando le risorse e bilanciandone di conseguenza i costi.
Prima di entrare nello specifico di ogni singola caratteristica con i vari capitoli che compongono questo libro, è opportuno fare una breve, ma completa, panoramica delle funzionalità offerte da Azure, per meglio comprenderne l'efficacia in termini di completezza della piattaforma.

Continua: 1 di 4 Avanti
Condividi

Edizioni FAG Milano

Vedi anche...

Sempre aggiornato





Abbonati alla newsletter di Come fare a... Sottoscrivi l'RSS di Come fare a... Usi Windows Live Messenger? Abbonati ai nostri Windows Live Alerts Diventa fan di Come fare a... su Facebook Seguici su Twitter Scarica il Widget per Mac OS X