Skip to main content

Windows Azure – Outils et bonnes pratiques

SDC12935 Note: ceci est un résumé d’une session des Microsoft Days, pas mon point de vue.

Par Pierre Couzy, Microsoft France.

Un tour d’horizon d’Azure

Le principe est de prendre un DataCenter de Microsoft et d’y poser nos applications. C’est du Platform as a Service (PaaS), là où d’autres (comme Amazon) proposent de l’Infrastructure as a Service (IaaS).

Avantages

  • gérer les pics de charge immédiatement, là où en PaaS la montée en charge peut prendre plusieurs jours.
  • traditionnellement, une application n’est pas conçue pour permettre les fermes de serveur frontaux/UI/base de données; sous Azure, le mode de développement rend au contraire cela obligatoire.
  • l’identification de l’utilisateur se fait avec des moyens divers (Active Directory, OpenId, base de données, …) de manière transparente pour l’application (c’est intégré à l’identification traditionnelle .NET)
  • on peut uploader dans le Cloud public les données publiques de l’entreprise à publier, voire la logique l’accompagnant. On cloisonne ainsi bien les données privées, qui restent chez moi, et celles publiques, mises à disposition des autres dans Azure (JSON, AtomPub).

Comment se préparer

SDC12937 Si l’application est du type serveur web + base de données, il n’y a pratiquement pas de travail pour la porter sur Azure.

Par contre, si on utilise d’autres sources de données, comme des fichiers, c’est plus compliqué. Pour les fichiers, mieux vaut utiliser:

SorageHelper.GetContainer()
RoleEnvironment.GetLocalStorageResource()

Inconvénient: cela ne marche que pour du stockage temporaire: c’est perdu en cas de plantage, et ça peut subir de la répartition de charge.

Sinon, il y a le cloud storage pour stocker:

  • Blobs (données)
  • Queues (messages): adapté pour des logs, par exemple, là où un Blob prend trop de ressources si on fait des ajouts
  • Tables

Inconvénient: il faut utiliser des API spécifiques pour y accéder, notamment parce que c’est du HTTP.

Gérer un déploiement

Dans une démo, on peut déployer via le portail en uploadant le package réalisé par Visual Studio. Mais en pratique c’est lourd en manips et ça prend environ 15 minutes.

En pratique, pour éviter ça:

  • Grâce à l’identifiant unique Azure on peu automatiser le déploiement. Pour cela il faut un certificat dont on fournit juste la clé publique (même un certificat généré personnellement fonctionne).
  • CloudBerry Explorer permet une vue à la Norton Commander

Quand on fait F5 dans Visual Studio, on a un environnement Azure local pour simuler un DataCenter. Mais un vrai DataCenter est un peut différent. Le programme “Azure Diagnostic Manager” permet d’en savoir plus sur ce qui s’est passé dans Azure.

Autre façon d’avoir des informations: activer IntelliTrace, qui recueille énormément d’informations.

Instrumenter l’application est une bonne idée, car avec le Cloud on n’a pas assez d’informations. L’instrumentation permet de comparer ce qui se passe côté Cloud et côté serveur.

Comme on n’a pas de garantie sur l’odre de déploiement, il va falloir ajouter du code d’initialisation qui déploie le bouts d’infrastructure nécessaires s’ils n’y sont pas déjà.

Spécificités Sql Azure

Il est pratiquement comme Sql Server, mais:

  • il est “loin” du code: si on enchaîne 80 petites requêtes, ça ne fonctionne pas bien.
  • une surveillance constante de notre serveur SqlAzure est effectuée contre les attaques, qui coupe l’accès au serveur: si on ne respecte pas des bonnes pratiques de développement, on aura des surprises.

Comments

Popular posts from this blog

Vue semaine gratuite pour Windows Phone 7.5

J’ai le plaisir d’annoncer la disponibilité sur le marketplace de mon application Free Week Calendar . C’est la première application gratuite à vous fournir une vue semaine de vos rendez-vous. L’utilisation est aussi simple que fluide. Par défaut vos rendez-vous de la semaine courante sont affichés (les copies d’écran sont en anglais mais l’application est intégralement localisée en français): En glissant le doigt à gauche ou à droite vous obtenez la semaine suivante ou précédente. En écartant les doigts vous zoomez sur vos rendez-vous, et en les rapprochant vous revenez à la vue globale. Contrairement à d’autres applications, celle-ci est entièrement localisée pour fonctionner en français et respecter le lundi comme premier jour de la semaine. P.S: merci à l’ Accélérateur Windows Phone et Dalhia pour leur aide. Sans eux cette application aurait mis plus de temps à sortir.

Tutoriel: Insérer un flux RSS dans une page ASP.net

Nous allons ici voir comment rapidement incorporer un flux RSS dans un formulaire Web ASP.net. Plus exactement, nous allons nous abonner à un flux Atom. Le but est d'afficher en tant que HTML les titres des entrées du flux, avec les liens vers les articles, et d'incorporer le tout au formulaire Web, comme je le fais sur ma page: Dans cet exemple, nous prendrons le flux RSS provenant de l'URL http://arnaudweil.blogspot.com/rss.xml . Puisque le RSS est du XML , nous allons facilement pouvoir le transformer en HTML grâce au contrôle ASP.net Xml et à une transformation XSLT . Dans ma page blog.aspx, j'écris donc: <asp:Xml ID="Xml1" runat="server" TransformSource="~/rss2table.xsl" /> Il me faut ensuite créer la transormation XSLT. J'ajoute donc à la racine de mon site un fichier rss2table.xsl avec le contenu suivant (cliquez avec le bouton droit sur le nom du projet dans l'Explorateur de Solutions de Visual Studio et ch...

Gift idea : help your loved ones take their IT skills to the next level

You surely know a special person who works in IT. Learn Kubernetes & Docker enables them to quickly ramp up on those two technologies that one doesn't want to miss in 2021. With smoother operations, better scaling and availability, DevOps tooling, containers and containers orchestration smartly solve many problems that developers and system administrators commonly face. Don't let your loved ones face problems in their IT job : offer them the book that takes them from zero to productive in a matter of days. Grab it now! Get the ebook from Leanpub , Amazon or choose from many retailers . Get the print edition from Lulu .