Affichage des articles dont le libellé est cloud. Afficher tous les articles
Affichage des articles dont le libellé est cloud. Afficher tous les articles

samedi 27 avril 2013

Le cloud: le juge de paix des architectures applicatives

Le cloud se veut une réponse  agile et souple à nos besoins en services informatiques.  Mais il se révèle aussi comme un élément structurant qui influence l'architecture des applications informatiques.

Prenons trois exemples:

Deux applications identiques

 Les applications A et B sont identiques en terme de fonctionnalité, du nombre d’utilisateur etc.
Pourtant chaque mois la facture du fournisseur du cloud sera pour l'application 'B' trois ou quatre fois plus chère que pour l'application 'A' : pourquoi ?.
L'utilisation du cloud n'est pas gratuite, le coût dépend de l'usage.  La réponse est simple: dans l'application 'A' la grande partie des traitements  est réalisée sur le poste client. La partie cloud ne sert qu'a délivrer une application complète qui ne fera appel au cloud que pour la récupération des données.
C'est l'utilisateur qui supporte une plus grande partie des coûts en utilisant la puissance de calcul de son poste.



Ce raisonnement est amplifié dans le cadre d'une entreprise qui utilise un cloud privé ou public: elle supporte un double coût: La partie cloud et la partie poste de travail. Cette dernière étant obligatoire: chaque employé est doté d'un poste de travail.


2eme exemple la scalabilité.


Le cloud est avant tout élastique. La puissance mise à la disposition doit pouvoir s'adapter (dans les deux sens) en fonction de la demande. Vous n’êtes pas face à un cloud s'il faut deux jours de délais pour obtenir une machine virtuelle supplémentaire. Au contraire , ces ajustements doivent pouvoir être administrés par des commandes à votre disposition.
Mais toutes les applications ne sont pas 'scalable' de la même manière. Si votre application utilise un serveur de session  (en base par exemple) l'ajout de serveur applicatif va se heurter à des problèmes de disponibilité des informations de session. Aussi, il est préférable que la session soit portée par le client afin de libérer la partie serveur d'une tache complexe et coûteuse.  Ce déport concerne   les traitements , le stockage coté client. Il est favorisé par l'utilisation d'architecture de type REST.
Sans état: Chaque requête d'un client vers un serveur doit contenir toute l'information nécessaire pour permettre au serveur de comprendre la requête, sans avoir à dépendre d'un contexte conservé sur le serveur. Cela libère de nombreuses interactions entre le client et le serveur.
https://fr.wikipedia.org/wiki/Representational_State_Transfer


3eme exemple: Les nouveaux terminaux: smartphone-tablette


Un des critères de qualité important pour une application pour les terminaux mobiles est la consommation électrique. Aussi , une application qui est obligée d'échanger en continu avec le serveur va  vider les batteries du terminal. Les applications voraces sont vite abandonnées par les utilisateurs. D'où l’émergence d'un type d'application qui embarque les traitements et une partie des données. L'application travaille de manière autonome et se synchronise de temps en temps avec votre cloud.
Ces application sont de type single-page application alias SPA en anglais
http://fr.wikipedia.org/wiki/Application_Web_Monopage

source :http://net.tutsplus.com/tutorials/javascript-ajax/important-considerations-when-building-single-page-web-apps/


En conclusion: toutes les applications ne sont pas taillées pour aller sur un cloud. Le choix d'une architecture applicative doit se conformer aux contraintes du cloud y compris dans sa logique de tarification: partager les coûts avec l'utilisateur en mutualisant la CPU et la mémoire.

Prochain épisode: dessine moi un cloud.











mardi 16 octobre 2012

Vive le web 0.2


Lors d'un screencast, j'ai utilisé le terme web 0.2 au lieu de web 2.0.
Sommes nous vraiment entré dans une version 2 du web ?

Pour ma part j'ai de plus en plus le sentiment que l'on est encore dans la préhistoire du web.
La révolution de l’hébergement des infrastructures et des plateformes  dans un Elastic Cloud et l'avènement de langages DSL vont nous propulser à la vitesse du son dans une nouvelle forme du web

Un web où le développeur sera au centre de l'univers.



J'exposais il y a maintenant 3 ans dans cet article :convergences des supports web 2.0
les évolutions d'un wiki.  C'était en avance de phase la description des systèmes de curation ou de yahoo Pipes.











Il y a encore du chemin à faire avant de disposer d'un système viral de publication. A partir d'une console de publication, le message serait diffusé sur d'autres medias qui eux mêmes se comporteraient comme une caisse de résonance.   



mercredi 4 juillet 2012

Publier une simple application pour Node.js sur le Cloud Heroku

Encore une nouvelle vidéo de "made by German".  Cette fois, elle a pour objet la publication d'une application Node.js sur le  cloud Heroku.

La video ou screencast est en ligne ici.


node1

Le programme est très simple, il n'y a pas de dépendance.
Voici le source en coffee script :

Sans dépendance  le fichier package.json est très simple:

node4
Le reste des manipulations sont celles vues sur les vidéos précédentes.



Le prochaine série de vidéo sera consacrée au projet Express qui est le pendant de Sinatra mais pour Node.js

mercredi 27 juin 2012

publier une application #node.js ou #sinatra sur le cloud heroku

Sur youtube la screencast ( vidéo) de la deuxieme et derniere partie de la publication d'une application sur le cloud heroku


Le plan de cette vidéo est le suivant : h2

Quelques diapos de la vidéo

La gestion des dépendances
h4
Création de l'application sur héroku
h3

En résumé

a) Créer un répertoire
b) faire git init
c) Créer la stack heroku
d) versionner
e) Publier




bref regardez la vidéo.


(rappel :lien vers la premiere partie : lien ici.)

mercredi 20 juin 2012

Conférence de Patrick Chanezon : Le développeur :The artist #cloud , #ruby

J'ai assisté à des  conférences de Patrick Chanezon (ex Google , maintenant chez Cloud Foundry)
C'est quelqu'un d’enthousiaste et de très bons conseils.

J'avais préparé ma conférence pour les solutions linux et par hasard la veille je suis tombé sur une conférence de Patrick sur l'évolution du développement: sa vidéo est tombée à pic. L'important lors d'une présentation est de raconter une histoire. J'ai commencé la mienne par ' mon chien médor  a le blues, il est developpeur JEE etc... .'


 



J'ai commencé à m'amuser avec le Cloud , celui d'heroku et grace à Patrick j'ai découvert celui de Cloud Foundry. J'ai ouvert un compte et je pense bien l'essayer prochainement , cela fera l'objet d'une future vidéo sur http://apprendre1chosechaquejour.herokuapp.com/ . Le coeur de  Cloud foundry est en Ruby, le projet est en opensource.  Il  supporte d'autres langages  que Ruby :java , Node.js etc. Il est possible d'installer un cloud  localement sur sa machine avec vmware.

Ma conf sur share-slide :

mercredi 13 juin 2012

Une vidéo pour commencer avec le cloud #Heroku

Une nouvelle vidéo sur le sujet  du cloud heroku: Les prérequis. 
Elle est disponible ici sur ce lien.

Plan de la vidéo 


1 ) GIT.


Héroku utilise le système GIT pour réaliser les publication sur le nuage. Le choix de ce système permet de tester localement l'application avant sa publication. Il présente l'avantage d'utiliser une  commande connue par les développeurs. GIt est la 3eme génération d'outil de versionning après CVS et SVN.


2 ) Clé SSH


Héroku utilise une clé SSH pour sécuriser la publication des composant.
C'est avec la commande ssh-keygen que la clé sera obtenue. La syntaxe est la suivante: 
ssh-keygen -t rsa -C une_adresse_mail 
L'option -C permet d'associer à une clé publique un commentaire. Il est pratique de s'en servir pour indiquer l'adresse mail relative à l'utilisation de cette clé. Cette mention  est uniquement à caractère informatif.

 3 ) Création  et activation de son compte Heroku.

Heroku va envoyer un mail de conformation pour terminer et activer votre compte.

La fin de l'installation se fait par la récupération de la trousse à outil Héroku. Son installation se traduit par la mise à disposition de 2 nouvelles commandes: heroku et foreman qui servira à lancer les services.


Toutes les sont reprisent sur le site: http://apprendre1chosechaquejour.herokuapp.com/videos 



lundi 28 mai 2012

Une application #Sinatra ou #node.js sur heroku

Je voulais tester la création d'une application sur un Cloud. C'est fait, et c'est très facile avec le cloud HEROKU. L'opération a duré 5 minutes.

L'application s'appelle : Apprendre une chose chaque jour. A1CCJ). Elle  est realisée avec le framework Sinatra pour Ruby


J'ai mis en ligne des vidéos qui sont destinées à détailler la création du site. Chaque nouvelle vidéo donnera lieu à un tweet pour mes abonnés.

Héroku utilise la  même architecture  une application Sinatra et pour Node.js (la pile CEDAR)

Cedar is a polyglot platform with native support for many of today’s most popular and productive languages and frameworks.


Les opérations à faire sont:


  • Creer un compte chez heroku
  • Telecharger le client heroku
  • Avoir une clé publique SSH : le lien ici détaille cette phase pour github


Puis suivre les instructions d'heroku

Les 3 commandes à connaitre sont


  • git add .
  • git commit -m "un_texte"
  • git push heroku master


Et hop ... l'application est sur le cloud.
La présence dans votre répertoire d'un fichier package.json indique à Heroku que l'application utilisera node.js. Idem pour un fichier Gemfile et  ruby


(Des vidéos explicatives seront bientôt sur le site)

C'est vraiment une révolution dans l'hébergement des applications.



lundi 5 juillet 2010

Microsoft sur la mauvaise pente: quelle stratégie ?




Il y a du mou dans les voiles de Microsoft. La firme américaine recule dans les secteurs de ses nouvelles activités. 2010 sera une année décisive et Microsoft fait des gros paris sur un avenir incertain.

Le cœur de métier de Microsoft est son activité d'éditeur avec deux piliers: Le système d'exploitation et la suite bureautique. Après avoir raté deux virages : les PC en réseau et Internet , Microsoft peine à reprendre la main. D'où sa stratégie de diversification avec :

La musique : avec le lecteur Zune : Gros échec , noyé au milieu des IPOD


Le moteur de recherche : bing


Il n'a pas réussi à s'imposer comme un concurrent sérieux de google.



  • La messagerie instantanée MSN: c'était le produit d'appel de Microsoft auprès des jeunes, avec l'espoir qu'il devienne un point d'accroche vers les produits complémentaires. Hélas non seulement, Microsoft à perdu la bataille des serveurs de messagerie d'entreprise, mais c'est maintenant le tour de MSN d'être attaqué par la messagerie instantanée de facebook.

  • La gamme .NET : positionnée comme un concurrent de Java et JEE, ce n'était pas vraiment une révolution. .NET s'adresse au entreprise ayant déjà du Microsoft et ne s'adresse donc pas à des nouveaux clients. D'autant que JEE et .NET sont dans le même bateau qui coule, bientôt submergé par la vague des frameworks légers ou agiles ET pas chers.



  • Les OS de smart-phone: L'OS de Windows à destination des smart-phone perd des parts de marché face aux concurrent comme Android.





  • Le domaine du jeux: très dur de ne pas devenir numéro 1 avec une console bourrée de technologie et une usine de fabrique de jeux. Alors que Nintendo vend des WII basées sur des architectures anciennes, comme des petits pains.


  • Le décisionnel ! Là aussi, Microsoft possède avec excel , un point d'accroche très diffusé. Hélas , la firme de Redmond n'a pas réussi à capitaliser sur Office/Décisionnel . Sur le marché du décisionnel grand public (PME) , Oracle , SAP mais surtout Google sont tous prêts à se jeter dans la bataille.



Les paris de Microsoft.

  • Les OS pour portable

La prochaine version de l'OS pour smart-phone: C'est soit une réussite soit Microsoft arrêtera certainement les OS de ce type.


  • Une nouvelle console de jeux: Un système avec plusieurs caméras et des détecteurs de mouvements. Plus besoin de manette.
  • Windows 7


Le fonds de commerce:

  • L'OS pour PC.

L'échec de VISTA a traumatisé les ingénieurs de la firme et le meilleur OS de la firme reste l'indémodable windows-XP. Là aussi Google attend son heure et est prêt avec un WEBOS.


  • La suite office.

Les suites bureautiques sur des clouds sont l'avenir et google a déjà plusieurs longueurs d'avance sur tout les concurrents.


L'avenir

  • Les clouds : Avec azure , microsoft colle au mouvement irréversible et incontournable des 10 prochaines années. Une course à la puissance est lancée et google a déjà plusieurs longueurs d'avance sur tout les concurrents. (je fais du copier collé avec cette phrase)



Conclusion.

Le bilan est un peu triste d'autant que Microsoft à développé et ouvert des technologies sans avoir su en tirer des avantages:
Exemples :le protocole SOAP ou les bases d'AJAX (XMLHTTPRequest).
La solution pourrait venir d'un retournement stratégique déjà amorcé mais encore timide : que Microsoft participe activement au mouvement opensource et logiciel libre. En espérant encore voir lontemps les 'fenetres bleues' de windows.

vendredi 29 janvier 2010

Les trois formes du cloud et google

2010 s'annonce comme l'année du Cloud computing. Dans cette partie de Monopoly géante, google est bien placé grâce à sa stratégie globale centrée sur la vente d'espace publicitaire sur des segments.
Il y a différents niveaux de cloud computing:
  • Le IAAS : Infrastructure as a service
  • Le PAAS : Platform as a service
  • LE SAAS :Software as a service

Le IAAS représente la quincaillerie : les serveurs virtuels
Le PAAS , c'est le bus applicatif : les différents composants d'une architecture logicielle (ex: La base de données, le serveur WEB , le serveur applicatif)
Le SAAS: Se sont les progiciels pour répondre au service (messagerie , CMS , ERP etc)

Tout ceci est très bien expliqué dans un post : http://setandbma.wordpress.com/2009/09/03/cloud-strategy/ de Udayan Banerjee (en Anglais)

Et de http://maslintchoonthecloud.blogspot.com/2010/01/appscale.html d'olivier Leclère.



Le service de messagerie gmail de Google est un des meilleurs du moment. Avec ce service Google peut savoir avec qui on communique (adresse mail ) et sur quel sujet (lire ici les règles de confidentialité google). Quitte à avoir une infrastructure et des services taillés à une échelle mondiale , pourquoi ne pas louer une portion de ce service à une entreprise. Ainsi pour quelques dollars par an ET par boite , google vous propose d'héberger tous vos services de messagerie. Dans ce cas de figure, les règle de confidentialité sont plus strictes et protègent vos données. Google s'occupe de tout , plus besoin d'avoir des serveurs , des salles, des frais de maintenance et des factures d'électricité. Vos équipes d'administrations n'auront à gérer que l'aspect fonctionnel du service et non plus le coté technique. C'est du SAAS : Software as a service.

Ici une illustration (clic pour élargir)






je fais confiance à Google pour avoir préparer un plateau de jeu favorable et conforme à sa stratégie
(photo reddit.com )
googolopoly_shot