Lead developer web


#PHP #Symfony #RabbitMQ #Redis #Git #Nginx
#Performance #Quality #Testing

Retour sur le SymfonyLive Paris 2016

PHP   Symfony   Evénement  

Les 7 et 8 avril derniers, le SymfonyLive Paris 2016 a eu lieu à la cité internationale universitaire de Paris.

Pour ceux qui ne connaissent pas, ce rendez-vous est incontournable pour les fans et utilisateurs du framework. Durant ces deux jours, un ensemble de conférences autour de la communauté Symfony est proposé. Différentes entreprises sont sponsors de l'événement et certaines proposent des animations.

Retour sur les conférences

Jeudi

Monolith Repositories with Git

Pour débuter le SymfonyLive, Fabien Potencier nous a indiqué les avantages et inconvénients, d'abord d'un dépôt unique mais aussi pour le multi dépôts. Lors de cette conférence, l'organisation actuelle des dépôts de Symfony a été précisée. En résumé : un dépôt par composant Symfony est créé mais seule la lecture est disponible et un dépôt global est présent pour le projet. Dès lors qu'une modification est réalisée sur le dépôt principal, une répercution est réalisée sur le ou les dépôts du ou des composants. A noter que pour cela, un outillage a été développé pour compléter la commande git.

Guard dans la vraie vie

Jérémy nous a ensuite fait part de quelques explications sur le composant Guard de Symfony notamment concernant la configuration et un exemple d'utilisation basique. D'autres exemples rapides ont ensuite été présentés afin de préciser le fonctionnement global de ce composant.

R2D2 to BB8

Vincent et Guillaume nous ont ensuite fait un retour d'expérience sur la migration progressive en cours de réalisation chez La Fourchette. Très rapidement : une V2 existante, une V3 en cours de développement. Une migration des données de la V2 vers la V3 a été réalisée. Aussi lorsque la V2 est utilisée par les utilisateurs, l'application appelle une API V3 qui met à jour les bases de données des applications V2 et V3.

PHP Meminfo ou la chasse aux memory leak

Benoît est ensuite monté sur scène afin de nous parler de l'extension meminfo permettant de réaliser du débuggage concernant l'utilisation mémoire et de faire la chasse aux fuites. Une notion importante a été précisée : une fuite mémoire entraîne aussi des problèmes de performances. Une petite démonstration a également été réalisée.

Retour d'expérience Reactive Architecture et Microservices : Comment découpler mes applications ?

Après une pause déjeuner, Fabien nous a fait un retour d'expérience sur la mise en place de micro services chez Auchan E-Commerce. Ainsi, l'architecture cible et les concepts qui ont été mis en place nous ont été présentés.

Le reveil du Workflow

Grégoire nous a quant à lui présenté un nouveau composant qui sera sûrement intégré dans la version 3.2 de Symfony. Le composant Workflow n'est pas si récent puisqu'une ébauche existe depuis quelques années, mais il a évolué récemment afin de fournir des fonctionnalités supplémentaires. Son objectif principal est de gérer des étapes de workflow pour une instance d'objet.

ElasticSearch chez BlaBlaCar

Olivier nous a ensuite présenté l'utilisation du célèbre outils d'indexation et recherche de données chez BlaBlaCar. Durant cette conférence, des exemples précis d'appels à cet outils ont été mentionnés concernant l'écran de recherche de trajets du site.

Performance au quotidien dans un environnement Symfony

Pour conclure cette première journée, Xavier nous a expliqué les problèmes de performances rencontrées lors de la migration vers Symfony chez CCM Benchark. D'ailleurs, le choix du framework n'a pas été fait à la légère et des problèmes ont été rencontrés lors de l'utilisation du couple Symfony / Doctrine. Quelques conseils d'optimisation ont ensuite été donnés.

Vendredi

Keynote

Pour débuter cette seconde journée, Mathieu nous a parlé de confiance dans le travail, plus exactement de mise en pratique de la confiance dans le monde professionnel. Ainsi, des conseils ont été donnés pour une future mise en place et une comparaison avec le modèle "hiérarchique" a été présentée.

PSR-6 & Symfony Cache : de la perf en standard

Nicolas nous a ensuite présenté les spécifications de la norme PSR-6. Plusieurs solutions existent mais toutes ne respectent pas cette nouvelle norme. Une présentation de la mise en place et des différentes possibilités dans Symfony a ensuite été réalisée.

Sécurité web: pirater pour mieux protéger

Alain a ensuite pris le relais avec une conférence sur la sécurité. Plus précisément, des conseils et anecdotes concernant les failles de sécurités les plus connues ont été donnés, ainsi que des points importants à ne pas négliger lors du développement d'une application web.

Aller plus loin avec Doctrine2

Pour terminer la matinée, André et Amir ont donné pas mal de tips concernant l'utilisation de Doctrine notamment la création de mots clés, les événements et l'amélioration des performances.

Refondre un moteur de règles avec l'expression language de symfony2

Après la pause repas, Hussein et Xavier nous ont fait un retour d'expérience sur l'utilisation du composant Expression language de Symfony chez Sell Secure. Lors de cette conférence, la simplicité d'utilisation du composant a été mise en évidence.

Sécurité et HTTP

Romain nous a ensuite parlé sécurité en indiquant quelques possibilités concernant les entêtes HTTP. Il a pu durant cette présentation nous faire un retour sur sa manière d'aborder le sujet, n'étant pas expert dans le domaine.

Construire des applications cloud natives

Pour conclure, Ori nous a parlé de l'organisation et l'optimisation des différentes briques d'une application et plus précisément dans le cloud.

Bilan

Deux jours très riches techniquement, des conférences intéressantes et des rencontres sympas, que demander de plus ?

Si vous souhaitez retrouver différentes informations sur les conférences, et notamment les slides, c'est ici ;)