1 / 26

Azure et les technologies non Microsoft : PHP, Java, Eclipse...

Azure et les technologies non Microsoft : PHP, Java, Eclipse. 10 février 2010 Yves Yang – Soyatec Xavier Warzee – Microsoft Stephane Crozatier – Microsoft. Agenda. Windows Azure Rappel : les grandes briques Azure, une plateforme interopérable

hisa
Download Presentation

Azure et les technologies non Microsoft : PHP, Java, Eclipse...

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Azure et les technologies non Microsoft : PHP, Java, Eclipse... 10 février 2010 Yves Yang – Soyatec Xavier Warzee – Microsoft Stephane Crozatier – Microsoft

  2. Agenda • Windows Azure • Rappel : les grandes briques • Azure, une plateforme interopérable • Consommerà partir de technologies non-Microsoft • Windows Azure • SQL Azure • Exposeravec des technologies non-Microsoft • Les principes fondamentaux • PHP, MySQL, Tomcat • La boîte à outilssous Eclipse - Soyatec

  3. Windows Azure Platform Windows Azure est une plateforme de services à l'échelle d'Internet, hébergée et opérée par Microsoft dans des centres de données à travers le monde. Il s'agit d'une plateforme simple, fiable et performante pour créer des applications et services Web. eclipse SOAP / REST / XML Tabular Data Stream

  4. Azure Platform – Interopérable • Conçue sur les principes d’interopérabilité depuis la conception, Windows Azure est une plateforme ouverte et bâtie sur des standards internet. http://www.azure.com/interop Solutions Accelerators • MemcachedSolution Accelerator • Instance Manager • TomcatSolution Accelerator • MySQL PHP Solution Accelerator • MediaWikiMySQL Solution Accelerator Outils et SDKs • Windows Azure SDK for Java • Windows Azure SDK for PHP • Windows Azure Tools for Eclipse • AppFabric SDK for Java™ Developers • AppFabric SDK for Ruby Developers • AppFabric SDK for PHP Developers

  5. Consommer des services Azure • Azure Storage Service REST API • Azure Management Service REST API Requête GET /?restype=container&comp=list HTTP/1.1 Host: mstechdays2010.blob.core.windows.net Connection: Keep-Alive … … … Réponse HTTP/1.1 200 OK Content-Type: application/xml Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 … … … <?xml version="1.0" encoding="utf-8"?> <EnumerationResultsAccountName="http://mstechdays2010.blob.core.win.. <MaxResults>5000</MaxResults> <Containers> <Container>

  6. Communiquer avec SQL Azure • Support du protocole clientTabular Data Stream (TDS)version 7.3 ou plus • .NET Framework 3.5 SP1Data Provider for SQL Server(System.Data.SqlClient) • SQL Server 2008 Native Client ODBC driver • SQL Server 2008 Driver for PHP version 1.1 • Microsoft SQL Server JDBC Driver 2.0

  7. Démos Azure Storage depuis Java/Eclipse SQL Azure depuis Delphi

  8. Exposer des services Azure • Limitations techniques • Que peut-on déployer dans un service Azure ? • Application installée via xcopy • Application exécuté en standard-user • Pas d’accès aux machines virtuelles • Physiquement • Ouverture de session Remote Desktop • Tout autre utilitaire d’administration nécessitant des droits administrateur

  9. Exposer des services Azure • Concept : Web Role – FastCGI *.php IIS LoadBalancer HTTP HTTPS Fast CGI php-cgi.exe php-cgi.exe Virtual Machine

  10. Exposer des services Azure • Concept : WorkerRole – Input Endpoint Input Endpoint LoadBalancer TCP appli.exe Virtual Machine

  11. Exposer des services Azure • Concept : RoleEntryPoint class MyRole: RoleEntryPoint { privateboolm_bIsBusy= true; public overridevoidRun() { m_bIsBusy = false; while(true) Thread.Sleep(TimeStamp.FromSeconds(30)); } public overrideboolOnStart() { RoleEnvironment.StatusCheck += StatusCheck; --> Démarrage du service <-- return true; } public overridevoidOnStop() { } voidStatusCheck(objectsender, RoleInstanceStatusCheckEventArgse) { if (m_bIsBusy) e.SetBusy(); }

  12. Exposer des services Azure • Concept : Azure Drive • Disque VHD • Attaché via driver NTFS Azure • Depuis un Page Blob • Lecture/Ecriture sur instance unique • Lecture sur instance multiple VHD / NTFS

  13. Démo Héberger un serveur Web PHP via Fast-CGI Héberger un serveur MySQL avec stockage sur disque Azure Drive Héberger une application SpringHibernate sur serveur Tomcat / Java

  14. Une application Spring/Hibernate • L’application PetClinic • Exemple du Springframework • URL : • http://petclinic.cloudapp.net Worker Role Worker Role Worker Role webapp JDBC LB SQL Azure

  15. Approche • Utilisation de la solution d’encapsulation de Tomcat • « Tomcat Solution Accelerator » • http://code.msdn.microsoft.com/winazuretomcat • http://www.microsoft.com/windowsazure/interop/ • Création d’un package Azure contenant • Tomcat • JRE (Java RuntimeEnvironment) • Applications Web (webapps) • Chargement du package (80 Mo à 150 Mo) sur le portail Azure sur un blob • Solution ligne de commande : • http://code.msdn.microsoft.com/wazt • Solution graphique : • https://www.cerebrata.com/Products/CloudStorageStudio/Download.aspx • Création d’une base de données SQL Azure : petclinic • Configuration de l’application Petclinic • Driver JDBC 2.0 Type 4 pour « SQL Server » (http://bit.ly/ay9naa)

  16. Autres applications • Hudson : serveur d’intégration continue • http://hudson-ci.cloudapp.net • Apache Roller : moteur de blogs • http://java.cloudapp.net/roller

  17. Windows Azure - développement environnement sous eclipse Date 8 Février 2010 Nom du speaker Yves YANGTitre du speaker CTOSociété Soyatec

  18. Soyatec • Une société française dans le monde du logiciel libre sous l’environnement Eclipse. Son équipe constituée en 2002 confirme une maitrise approfondie des logiciels • d’IHM déclarative • de Modélisation d’IHM • Des outils de développement visuels d’IHM • Membre de la fondation Eclipse • Acteur de plusieurs projets Open Source • Reconnu comme l’un des contributeurs de référence. • Partenariat avec Microsoft

  19. Projets chez eclipse • XWT – e4 Une solution d’IHM innovante dans le monde Java & eclipse, qui est en train de devenir le standard. Il s’agit d’un moteur d’IHM déclarative en XAML • PMF (PresentationModeling Framework). Un génie logiciel en IHM a pour but de fournir un ensemble d'outils de génération d’application. • EGF (Eclipse Generation Framework) L’objectif est de fournir un environnement industriel de génération logiciel basés sur les modèles (Usine Logicielle).

  20. Projets chez eclipse • VE (Visual Editor) Outil permettant le développement d’IHM en mode visuelle. • XWT Designer • E4 Workbench Designer • ESL Environnement de développement pour Microsoft Silverlight sur la plateforme Eclipse.

  21. Objectif Principaux Un environnement de développement complète pour Windows Azure • Gestion et configuration de projet • Conversion de Projet • Outils de développement en PHP • Outils d’édition de code • Template • Code complétion • Exploreur des données • Exécution en mode de simulation • Debugging en mode de simulation • Déploiement dans le Cloud

  22. Architecture • Windows Azure PDT • Windows Azure Java SDK • Eclipse PDT • Outils • Windows Azure SDK • Eclipse Plate -forme

  23. Démo

  24. Plan de développment • Java DSK • Gestion de compte • Nouvelles APIs sur le stockage • support de xDrive • Exploreur des données • DnD support • Windows Azure PDT • Déploiement en un clique • Support de Workerrole • Gestion des déploiements dans la simulation • Support de Multiple Web roles • Serveur Web en Java • Tomcat

More Related