Your SlideShare is downloading. ×
Symfony live Paris 2014 - Symfony2 sur Azure
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Symfony live Paris 2014 - Symfony2 sur Azure

1,106
views

Published on

Présentation utilisée en guise de support lors du Symfony Live 2014 à Paris sur comment migrer rapidement et simplement une application Symfony2 sur Azure. L'exemple se base principalement sur comment …

Présentation utilisée en guise de support lors du Symfony Live 2014 à Paris sur comment migrer rapidement et simplement une application Symfony2 sur Azure. L'exemple se base principalement sur comment migrer son système de stockage de données et sa gestion des fichiers via la mise en place d'un Blob Storage.

Published in: Software

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,106
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. SYMFONY2 ET MICROSOFT AZURE L’efficacité de PHP dans le cloud Symfony Live Paris 2014 8 Avril 2014
  • 2. QUI SOMMES-NOUS ? 2 • JÉRÔME RESPAUT – Lead Dev – Brainsonic – jerome.respaut@brainsonic.com • STÉPHANE ESCANDELL – CP Technique – Brainsonic – stephane.escandell@brainsonic.com @BrainsonicParis
  • 3. BRAINSONIC BLENDED AGENCY1. 3
  • 4. 4 10M 110 EMPLOYEES NOS PARTENAIRES STRATEGIQUES DE CHIFFRE D’AFFAIRES
  • 5. BRAINSONIC 5 CONTENU DE MARQUE RÉSEAUX SOCIAUX EXPÉRIENCES CONNECTÉES Engagement Utilisateurs PLATFORMS – Au service de l’engagement de vos audiences  Brainsonic est une « Blended Agency » : qui combine des compétences éditoriales, créatives et techniques, via des prestations de service et des plateformes logicielles. EQUIPE BLENDED (CREA, EDITO, DEV) OUTILLAGE & PROCESS DELIVERY & ROI
  • 6. MICROSOFT AZURE 2. 6
  • 7. L’HÉBERGEMENT MICROSOFT AZURE  Microsoft Azure Web Sites 7 App Web modernes Parfait si votre application se compose de code client-side, server-side et une base de données. Forte scalabilité. Développement continue Déploiement directement depuis vos dépôts GIT ou TFS, ou encore via FTP, Open source apps Permet d’instancier un site professionnel en quelques clics avec des CMS comme WordPress, Joomla!, Drupal, DotNetNuke et Umbraco.
  • 8. L’HÉBERGEMENT MICROSOFT AZURE  Microsoft Azure Cloud Services (WebRole et WorkerRole) 8 Multi-tier applications Applications cloud, où il est important de séparer les couches métiers. (i.e. cache mémoire, processus asynchrone, etc.) utilisant à la fois les WebRole & WorkerRole. Apps avec administration avancée Applications nécessitant un utilisateur administrateur, un accès à distance ou des droits spécifiques. Apps avec configuration réseau avancée Applications nécessitant une configuration particulière ou avancée utilisant Windows Azure Connect ou Windows Azure Virtual Network.
  • 9. L’HÉBERGEMENT MICROSOFT AZURE  IAAS Microsoft Azure Virtual Machines 9 Applications existantes d’entreprise Faire tourner directement vos applications existantes dans le cloud, nécessitant par exemple SQL server, SharePoint server ou Active directory. Porter des images existantes Instancier des VM en utilisant une image depuis la bibliothèque Azure ou en envoyant vos propres template VHD. Windows ou Linux Supporte Windows Server, mais aussi les distributions Linux. Possibilité de connecter des VM avec des Cloud Services pour exploiter au maximum les avantages du PaaS.
  • 10. 10 Déploiement quasi instantané
  • 11. CLOUD SERVICES 3. 11
  • 12. CHOIX DU WEBRÔLE  Choix historique  Besoin de Startup-tasks en admin  Installation modules PHP customs  Personnalisation conf php.ini  Initialisation Fwk (commandes Symfony)  Préparer l’arborescence disque  Debug simplifié via RDP  Installation d’applications tierces spécifiques 12
  • 13. CHOIX DU WEBRÔLE  Maîtrise des mises en production  Swap « staging »/ « prod »  Auto-scaling  Programmable  Modifiable à la volée 13 Choix historique => fonctionnalités absentes il y a 1 an
  • 14. SERVICES MICROSOFT AZURE4. 14
  • 15. CLOUD SERVICES MAIS AUSSI…  Load balancer / endpoints LB  Microsoft Azure Storage  SQL database  Table storage  Blob storage  Microsoft Azure Cache  Mobile services  Service Bus  Media Services 15
  • 16. INTÉGRATION DANS SYMFONY25. 16
  • 17. FIL ROUGE 17  Application « semi-full » REST  Authentification  Upload image  Fonctionne en local Migration sur Microsoft Azure
  • 18. One code to rule them all… 18
  • 19. Pour fabriquer de la potion magique, mieux vaut suivre la recette ! 19
  • 20. ABSTRAIRE LES SERVICES E/S 20  Un principe nécessaire  Interfaces de communication communes  Injection des services finaux  Système de stockage de données (ajouter une couche entre le modèle et la BDD ?)  Gestionnaire de session  Stockage de fichiers  … tout service tiers d’E/S (messages AMQP, Pool mails, …)
  • 21. UTILISER LE BUNDLE ADAPTÉ 21  Brainsonic/AzureDistributionBundle (github / packagist)  Fork beberlei/AzureDistributionBundle  Suivi des évolutions Microsoft Azure  Suivi des évolutions Symfony2  Mise à disposition de services (sf2) pour accéder aux services Microsoft Azure  Facilitateur de déploiement sur les Cloud Services  Encapsulation SDK Microsoft
  • 22. Concrètement, ça donne quoi ? 22
  • 23. SYNTHÈSE 23  Bundles utilisés dans l’exemple  FOS/FOSRestBundle  FOS/FOSUserBundle  KnpLabs/KnpGaufretteBundle  Brainsonic/AzureDistributionBundle  Points d’attention  Penser « modularité »  Concevoir des couches intermédiaires d’abstraction des systèmes d’E/S  Doctrine peu user friendly avec SQLServer, quelques améliorations possibles (éventuellement, MySQL est disponible sous Azure via le marketplace)  Compatibilité  Génération de packages Cloud Services uniquement disponibles sous Windows  Préférer l’utilisation de Azure Websites (compatible Mac/Linux, déploiement simplifié via git push)
  • 24. VOUS AVEZ DES QUESTIONS… 24  … nous pouvons essayer d’y répondre
  • 25. CONTACTEZ NOUS 25 – STÉPHANE ESCANDELL  stephane.escandell@brainsonic.com  JÉRÔME RESPAUT jerome.respaut@brainsonic.com