4. www.sooyoos.commercredi 27 avril 2016
• Un seul repository pour tout le code
• Split en many repo
• Git subtree split
4
1. changements atomiques de masse facilités
2. Code review
3. Un seul merge
4. Tout est centralisé (pas de gestion des
dépendances)
1. Réutilisable
2. Contrôle d’accès
3. Ci rapide et plus simple
4. Lisibilité
6. www.sooyoos.commercredi 27 avril 2016
• Plus facile d’implémentation que l’authentification précédente
• Moins de dépendances vers des bundles
• Facile à comprendre, à ajouter, à maintenir, à tester
• Documentation Guard sur Symfony : http://symfony.com/doc/current/cookbook/security/guard-
authentication.html
6
8. www.sooyoos.commercredi 27 avril 2016
• Migration de Symfony 2 à Symfony 3 d’une application B2B de LaFourchette
• Durée 1 an
• Modèle de données schema.org
• Pas d’interruption de service
• Pas de doctrine pour l’import de données importantes
• Migration partielle des données : double écriture
• Double API v2 et v3
8
10. www.sooyoos.commercredi 27 avril 2016
• Intro mémoire php : Zval
• Le Garbage collector est déclenché tous les 10k objets pour vider les memory leaks
• Les memory leaks sont générées par les références cycliques (par exemple injection de container
dans un service, car le service appartient au container)
• Extension PHP pour monitorer l’utilisation mémoire MEMINFO
• Démo doctrine import
10
12. www.sooyoos.commercredi 27 avril 2016
• Migration du site CCM d’un framework maison
• Choix de Symfony car plus mature mais plus lent
• La solution : se passer d’ORM (Doctrine)
• Développement de Ting
• CDN type Akamai pour alléger de contenus
• Pas de symlink pour les assets et cache warmup (production)
• ESI pour les fragments HTML récurrents (header/footer)
• Asserts avec blackfire sur les temps de réponse
12
14. www.sooyoos.commercredi 27 avril 2016
• Présentation de l’évolution du Site du zéro vers OpenClassroom
• Gestion en transparence (accès aux données, slack totalement ouvert…)
• Échange de bureaux pour savoir se qui se passe dans le reste de l'entreprise
• Faire les rétrospectives de sprint
• Avoir confiance en ses employés :-)
• 3 piliers de la confiance : Transparence de l’information / Traitement des tensions / Diffusion des
responsabilités.
14
16. www.sooyoos.commercredi 27 avril 2016
• PHP-Fig : groupe de travail garant des PSR
• Peu représentatif (imposés par les grands acteurs)
• Trop bureaucratique
• Mais permet d’éditer des standards ou résoudre des problématiques
• PSR 6 standardise l’utilisation des différents système de cache
• Symfony implémentera son propre cache respectant PSR-6
• Actuellement on utilise le cache Doctrine qui sera abandonné car ne respectant pas le process qualité
de Symfony
16
18. www.sooyoos.commercredi 27 avril 2016
• Pas de mot de passe en clair en BDD, les hasher et les saler
• Utiliser HTMLpurifier pour les WYSIWYG
• Limiter le nombre de clics sur les systèmes de confirmation (SMS …)
• Protéger les pages de login avec un token CSRF, limiter les logins/min
18
19. www.sooyoos.commercredi 27 avril 2016
• Symfony live 2016 très accès sécurité et données, le talk sur memory leaks était très instructif car il est
répond à un problème courant.
• Certains éléments concernant la sécurité peuvent être mis en place à moindre effort, alors pourquoi
s’en priver ?
• Pour l’avenir, le composant workflow est très prometteur.
• Et sur une vision plus large, les conférences sur le Monolith repositories, la confiance et la sécurité
web furent très intéressantes.
19