Nouvelles Chroniques d'Amethyste

Penser au Sens, pas au Verbe

Azure: l’environnement de développement

Poster un commentaire

L’environnement de développement Azure est important pour nous développeur. Pourtant on ne trouve pas tant que ça de la documentation. En tout cas très peu de choses en français. Je vais donc essayer de combler ce manque dans cet article.

Il n’y a pas de révélations étonnantes à attendre certes, mais c’est tout de même bien de connaître un minimum ses outils de travail.

Visual Studio met à notre disposition deux outils:

  1. Development fabric
    C’est un émulateur Azure, il permet de tester certains aspects de son code, met aussi à disposition des ressources comme le stockage local (local storage).
  2. Development storage
    Environnement pour simuler les blobs, les tables et les queues.

Bien sûr tous les services ne sont pas disponibles dans l’environnement et certains tests ne pourront être faits que sur Windows Azure.

Partons à leur découverte.

Development Fabric

Normalement le service est initialisé lors du premier lancement de votre première application Azure depuis Visual Studio:

22-02-2014 14-31-23

Ce service est matérialisé dans par cet icône:

22-02-2014 14-34-19

On peut aussi lancer le service avec CSRun:

http://msdn.microsoft.com/en-us/library/windowsazure/gg433001.aspx

Un clic droit sur l’icône de Development Fabric ouvre le menu contextuel:

22-02-2014 15-18-21

Le rôle de ces menus est clair je pense. Si on sélectionne le premier par exemple:

22-02-2014 15-22-59

Dans cet exemple une application Windows Azure a démarrée, on voit sa console. Le Web Role n’a qu’une seule instance.

On peut en déclarer plusieurs:

22-02-2014 15-28-19

On n’a que des Web Role dans notre exemple.

La console permet d’arrêter ou de relancer un service, exactement comme depuis le portail Windows Azure.

Par exemple les services ont été arrêtés:

Bien sur tous les événements de RoleEntryPoint sont levés dans l’émulateur.

L’émulateur dispose même de son propre fichier de configuration tout comme les grands:

25-02-2014 22-36-34

Development Storage:

25-02-2014 22-48-10

Il est possible d’arrêter ou relancer les services afin de les vider par exemple.

Le service Development Storage utilise une base de données SQL Server (Express par défaut) configuré en authentification Windows.

Personnaliser la configuration du storage

On n’est pas obligé d’accepter les options par défaut. Il est possible de configurer le storage sur n’importe quelle instance locale SQL Server à l’aide de l’outil DsInit dont voici la documentation:

http://msdn.microsoft.com/en-us/library/windowsazure/gg433005.aspx

On doit d’abord veiller à installer SQL Server 2012 Express LocalDB:

http://www.microsoft.com/fr-fr/download/details.aspx?id=29062

Et démarrer son instance au besoin avec la commande SqlLocalDb.

  •  On saisit dans la fenêtre de commande du SDK Windows Azure la ligne de commande pour initialiser le storage sur l’instance par défaut:

dsinit /sqlinstance:.

Si ça ne marche pas on peut tenter:

dsinit /autodetect

Vous pouvez aussi obtenir la liste des instances présentes sur votre poste avec:

SqlLocalDb info

  • La fenêtre similaire s’ouvre:

27-02-2014 22-20-45

On a créé une base DevelopmentStorageDb22 avec ses ports par défaut pour chaque service. On peut noter le nom de l’instance locale concernée qui est (localdb)\v11.0 information qui va nous servir tout de suite après.

  • On peut voir notre base dans Management Studio, L’explorateur de serveur VS ou tout autre outil..
    On se connecte en authentification Windows sur l’instance que l’on vient de noter et il s’affiche:

28-02-2014 21-45-05

Profitons en pour voir comment sont structurées ces tables, c’est intéressant. Par exemple les Tables:

28-02-2014 21-49-24

Le nom du compte fait partie de la clef primaire, c’est ce qui assure la confidentialité des données.

Ceci étant fait on a juste créé un storage, encore faut t’il indiquer à notre application de s’y connecter. On se rend dans le répertoire où est installé le service d’émulation de storage.

Normalement c’est:

%Program Files%\Microsoft SDKs\Windows Azure\Emulator\devstore

On complète les deux fichier de configuration:

  1. DSServiceLDB.exe.config
  2. DSServiceSQL.exe.config

Et on ajoute la configuration:

<connectionStrings>
<add name= »DevelopmentStorageDbConnectionString« 
connectionString= »Data Source=XXXXXXX;Initial Catalog=DevelopmentStorageDb20;Integrated Security=True »
providerName= »System.Data.SqlClient » />
</connectionStrings>

Notez la valeur de l’attribut name que vous ne pouvez pas modifier.

Différences entre émulateur et la version Windows Azure

Un article Msdn devrait répondre à la question:

http://msdn.microsoft.com/en-us/library/gg433135.aspx

Mais la principale différence est tout de même que l’émulateur consomme les ressources de votre machine de développement!

Et voilà!

A titre de bibliographie on peut consulter:

http://blog.piyushthacker.com/?p=24

http://blogs.msdn.com/b/morebits/archive/2010/12/01/using-windows-azure-development-environment-essentials.aspx

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s