Magento 2 is to migrate or not to migrate, the right question ?
Nov. 6, 2014•0 likes•1,732 views
Download to read offline
Report
Internet
Retrouvez le support de présentation utilisé par notre expert Magento, Gabriel Bouhatous, lors de la conférence que l'e-Commerce Academy a tenu sur l'édition 2014 du salon Bargento.
Magento 2 is to migrate or not to migrate, the right question ?
1. BARGENTO 2014
conférence
Gabriel BOUHATOUS
Expert Magento
gabriel.bouhatous@ecommerce-academy.fr
MAGENTO 2
is to migrate or
not to migrate
THE RIGHT
QUESTION ?
11. MAGENTO 2!
2 : t o m i g r a t e o r n o t t h e r i g h t q u e s t i o n ?
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
Avant
MAGENTO ?
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
12. MAGENTO 2
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
13. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
14. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
1
2
3
4
Décembre 2006!
Varien décide de
créer une solution
e-Commerce
Janvier 2007!
!
Démarre avec
3 développeurs
Fév. 2007 à Fév. 2008!
!
12 releases beta
par 5 – 8 dévs.
Mars 2008!
!
Sortie de la
stable 1.0
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
15. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
MAGENTO
aujourd’hui ?!
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
16. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
250k!
• sites Magento en production
• 30% du top 100k Alexa
6.000!
• modules disponibles sur Magento Connect
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
17. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
Mais
surtout…!
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
18. MAGENTO 2!
M A G E N T O 1 . x : h i s t o r i q u e c o n t e x t e
7 années de
développement!
• 2007 – 2014
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
21. MAGENTO 2
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
«The platform is
mature enough
when it’s requiring
a new major
version.»Yoav KUTNER
CTO d’origine
22. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
23. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
24. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
25. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
Le rachat par eBay a occasionné :!
• une réorganisation des équipes
• le départ du CTO de l’architecte vers OroCRM
• une tentative d’intégration dans X.Commerce
• et finalement une ré-allocation des ressources X.Commerce vers Magento 2
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
27. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
Même sans le retard lié au rachat :!
• une fois la solution adoptée à large échelle,
tout changement majeur est impossible
• l’éditeur est contraint de garantir
une rétrocompatibilité sur la version majeure
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
28. MAGENTO 2
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
• Magento 2.x permet de repartir sur de nouvelles bases
sans devoir garantir la rétrocompatibilité
• tous les développements et thèmes 1.x
sont donc à refaire suivant les nouveaux principes 2.x
29. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
Mais cette attente
est finalement
une très bonne chose!
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
30. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
• cette longue période de « gestation » a permis aux dévs.
la liberté d’expérimenter jusqu’à aboutir à des solutions matures
• exemple avec le moteur de template Twig
implémenté dans dev44,
amélioré dans dev45,
et finalement supprimé dans dev49
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
31. MAGENTO 2!
MAGENTO 2 : pourq u o i u n e s i l o n g u e a t t e n t e ?
« Good things take time.
Great things take a long
time. »
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
(et ce n’est pas moi qui le dit…)
33. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : transparence
• le suivi et les contributions sont désormais possibles
directement via github.com/magento/magento2
mais surtout, elles sont intégrées voire enrichies.
ex. : filtre IP sur la maintenance
• des webinaires et une documentation technique
mais qui reste à remettre à jour (2012 2014)
34. MAGENTO 2!
MAGENTO 1.x Vs. MAGENTO 2.x : transparence
« Do we have a roadmap ?
Yes, we have a roadmap. »
Will you share it with us ?!
« No, we won’t share it with you.
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
Check Github. »
36. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : technologies
Côté serveur
ZF1 (ZF2 ?)
37. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : technologies
Côté serveur
ZF1 (ZF2 ?)
38. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : technologies
Côté client
• dans la lignée de Magento CE 1.9 et EE 1.14, Magento 2 fournit un blank
theme responsive.
Il s’agit de RWD «mobile-first approach».
• ce blank theme est basé sur HTML5 et CSS 3.
• jQuery devient le framework JS natif,
peut-être la fin des doubles implémentations jQuery + prototype
qui alourdissent les pages.
39. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : technologies
Côté client
• implémentation de RequireJs.
La gestion de dépendances entre JS permet des chargements optimisés.
• LESS CSS (ou SASS), langage css dynamique,
permet de simplifier la maintenance css et d’optimiser le poids des feuilles de
style.
41. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : performances
Gestion du cache FPC
• le full page cache devient natif en CE :
• interne via Redis (ou FS,…)
• externe via Varnish
• la gestion de cache public Vs. privé est assurée en FPC comme avec Varnish (ESI)
pour délivrer un haut % de pages via le FPC
42. MAGENTO 2!
MAGENTO 1.x Vs. MAGENTO 2.x : performances
Gestion du cache FPC!
• logique d’invalidation fine du cache,
mais pas de correction sur les tags liés au layout
• techniquement, tout était déjà possible et/ou fait en 1.x,
mais l’intégration native en 2.x encouragera l’adoption
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
43. MAGENTO 2!
M A G E N T O 1 . x V s . M A G E N T O 2 . x : p e r f o r m a n c e s
Sauvegarde produit
lente ?!
save EAV
4%
cleanCache BS
divers
4%
8%
$product-save();!
save EAV
cleanCache BS
cleanCache AS
indexation
divers
cleanCache AS
8%
indexation
76%
44. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : performances
Gestion des indexes
• tous les nouveaux indexes EE 1.13 deviennent natifs en CE
• stock, prix, produit catégorie à plat, produit Catégories,
URL Rewrite :
les nouveaux indexes sont… refactorisés
• tests de ré-indexation (en local, à vérifier) : + 20% à + 40% de
performances Vs. EE 1.13
45. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : performances
Gestion des indexes
• l’indexation partielle devient native
• l’indexation manuelle est remplacée par l’indexation
asynchrone ou à la sauvegarde
• à date pas de plan d’alternative à EAV
• techniquement, tout cela était déjà possible en 1.x,
mais l’intégration native en 2.x limitera le spécifique
46. MAGENTO 2
MAGENTO 1.x Vs. MAGENTO 2.x : performances
Performance toolkit
• une suite de générateurs pour
simuler des volumes (products, orders, ...)
• une suite de tests basés sur Jmeter pour
mesurer et suivre les performances
• permet en natif,
de valider la bonne performance de comportements clés :
ajout panier, recherche, checkout, ...
48. MAGENTO 2
P e r s o n n a l i s a t i o n
• Magento 1.x était modulaire, pour l’époque mais finalement,
beaucoup d’adhérence EST mauvais pour les performances / extensibilité
• Magento 2.x l’est «encore +, encore mieux»
• plus de class finale Mage
• utilisation des namespaces (php 5.3)
• injection de dépendances vs. rewrites
• intercepteurs et plugins vs. events
• service Layer pour les vues et l’API
51. MAGENTO 2!
P e r s o n n a l i s a t i o n
Configurable
Product
Catalog
Grouped
Product
Layered
Navigation
Downloadable
(1.x)
Bundle
(1.x)
Checkout
Agreements
Checkout
Multi
Shipping
52. refactoring de
la gestion des
prix
vues dans les
modules
widget grid
serializer (Grid
data via
layout)
code obsolète
supprimé
config XML
découpée en
mutiples *.xml,
moins lourds
et validés par
XSD
MAGENTO 2
P e r s o n n a l i s a t i o n
53. MAGENTO 2
P e r s o n n a l i s a t i o n
fallback
illimité
validation
XML des
layouts
merge
partiel des
layouts
1 page-action
= 1
fichier de
layout
Magento UI
Library
54. MAGENTO 2
P e r s o n n a l i s a t i o n
• bref, avec Magento 2,
tout est « plus mieux », tout est « plus simple »
• mais aussi plus compliqué ?
• namespaces php 5.3
• concepts techniques opposés à la 1.x
• concepts techniques « récents » pour php
• risque de sur-modularité
57. MAGENTO 2
S é c u r i t é
• Structure renforcée, répertoire «pub» dédié
répertoires var et app hors du répertoire public
• var/log : system.log et exception.log
• var/backups
• fichiers clients dans /var/export et import
• app/etc/local.xml
• Sécurité renforcée par des pratiques
conformes Top 10 OWASP
59. unitaires
(fonctions)
Suite de tests
automatisés
intégration
(produit)
statiques
obsolescence
(code 1.x)
performances (qualité)
MAGENTO 2
Q u a l i t é
60. MAGENTO 2!
Q u a l i t é
• avis : la vraie nouveauté de Magento 2 est
la présence de tests automatisés
• le véritable intérêt des changements apportés
est d’avoir rendu le socle Magento 2 :
• nativement testable
• nativement testé
• donc cohérent avec le positionnement « Enterprise »
61. MAGENTO 2
Q u a l i t é
AgileGento ?
Pratiques de réalisation de projets encouragées par Magento 2
63. MAGENTO 2!
F o n c t i o n n a l i t é s
• recherche améliorée
notamment par la pondération des attributs
• Google Adwords
suivi de la conversion
et… c’est tout.
pour le moment…!
64. MAGENTO 2
F o n c t i o n n a l i t é s
Annoncées…!
• Editeur visuel :
edition du frontend « à la Magento Go » (mise en place puis retiré, non prioritaire)
• Editeur de template :
export, intégration, import automatique
• Mises à jour plus sûres :
sauvegarde, aperçu (DB tierce), confirmation
65. MAGENTO 2
F o n c t i o n n a l i t é s
Supposées…
120
100
80
60
40
20
0
Import/
export
CMS Staging Reporting Recherche
Votes
Fonctionnalités les plus demandées au MLUK 2014 (extrait, sur 628 votes)
66. MAGENTO 2!
F o n c t i o n n a l i t é s
Théorie : versions « métiers »!
• avis : une autre « vraie nouveauté » de Magento 2 est
la séparation entre Produit et Logiciel
• (théorie) cela faciliterait une stratégie de :
distribution de modules / versions spécialisées
68. MAGENTO 2!
Roadmap b i l a n
Release prévue pour :!
Q2 2012
Q4 2012
Q1 2013
Q4 2013
2015 ?!
69. MAGENTO 2!
Roadmap b i l a n
1
2
3
4
Décembre 2014!
!
Dev. Beta
Mars 2015!
!
Dev. RC
Mi-2015!
!
Merchant Beta
Fin 2015!
!
Merchant GA
« 1.x maintenue 3 ans »!
Migration automatisée partielle, si conforme aux
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
standards!
70. Interrogez
directement
notre expert !
stand 15
Gabriel BOUHATOUS
@expert_magento / gabriel.bouhatous@ecommerce-academy.fr