Il Compute Emulator



L'ambiente che sta facendo girare la nostra semplice applicazione è il simulatore locale di Windows Azure che si è installato con l'SDK e che prende il nome di Windows Azure Compute Emulator dalla versione 1.3 (prima di novembre 2010 l'emulatore si presentava come Development Fabric).

Figura 48. L'applicazione in funzione su un'istanza di Azure
(clic per ingrandire)

L'applicazione in funzione su un'istanza di Azure

L'ambiente di simulazione consente di gestire più istanze emulando il comportamento del Fabric Controller e del relativo load balancer di Windows Azure: vengono utilizzati più processi per redirigere le richieste a diverse "applicazioni" che girano in contemporanea.

Ad esempio, provando a mettere 5 nel numero delle istanze (doppio click sul progetto evidenziato nell'immagine)

Figura 49. Aggiungere istanze
(clic per ingrandire)

Aggiungere istanze

e riavviando l'applicazione si ottengono 5 finestre di diagnostica sul simulatore.

Figura 50. Diagnostica del simulatore
(clic per ingrandire)

Diagnostica del simulatore

È sufficiente avviare il Task Manager per verificare i processi creati dall'emulatore con il nome di WaIISHost.exe.

Figura 51. I processi relativi alle istanze evidenziate nel Task Manager
(clic per ingrandire)

Le istanze evidenziate nel Task Manager

Come si nota sono presenti anche 5 istanze del debugger (WatDebugger.exe) oltre ai classici processi w3wp.exe in cui IIS sta facendo girare realmente la nostra applicazione di esempio.

Sono anche presenti 5 istanze del motore di diagnostica e alcuni processi che iniziano con DF: DF è l'acronimo di Development Fabric, che, fino a novembre 2010, come accennato in precedenaza, era il nome di quanto oggi conosciamo con Windows Azure Compute Emulator: in pratica, l'emulatore.

Figura 52. I processi "DF" del Development Fabric
(clic per ingrandire)

I processi 'DF' del Development Fabric

Ogni processo rappresenta una istanza in deploy e ogni istanza in deploy utilizza una directory diversa su disco per simulare l'accesso al disco fisso fisico della macchina che ospita l'instanza sul cloud.

In pratica l'ambiente, ad ogni operazione di deploy, crea una directory apposita e installa l'applicazione e le sue componenti all'interno di tale directory. È importante sottolineare che se vogliamo eseguire unit test, piuttosto che semplicemente controllare le operazioni effettuate dall'applicazione sulla directory corrente, è fondamentale controllare il numero di deployment per rintracciare la directory corretta sul file system.

Ad esempio:

C:UsersRobertobAppDataLocaldftmps0deployment(73)resdeployment(73).DevLeap.AzureBookManager.DevLeap.AzureBookManager.FrontEnd.0

rappresenta la directory locale dove l'emulatore ha effettuato il deploy della prima instanza (l'instanza zero) dell'applicazione.

Ultimi articoli ASP.Net

LINQ e la trappola della 'deferred execution'

Una "trappola" in cui si può incappare utilizzando il risultato di...

C#, le Custom Type Conversion

Conversioni personalizzate tra classi, creare metodi particolari per...

Introduzione a Entity Framework

Il framework ORM messo a disposizione da .NET

Repeater: visualizzare un feed RSS

Utilizzare il controllo XMLDataSource e sfruttare il metodo XPath()...

Repeater, il server control "semplice"

Cos'è e come funziona il controllo Repeater

Altri articoli

Guide ASP.Net

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Guida Visual Studio 2010

L'ambiente di sviluppo di riferimento per sviluppare applicazioni su...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Progettazione database

11 Maggio 2012 a Milano
Disponibilità: 6 Posti

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto