Upload
the-e-commerce-academy
View
547
Download
3
Embed Size (px)
Citation preview
BARGENTO 2014conférence
Gabriel BOUHATOUSExpert Magento
MAGENTO 2 is to migrate or not to migrate
THE RIGHTQUESTION ?
@ecommerce_acdmy
�-������(�!�$����" �$.�!&�%&�"!���#��"&������ �$��&�!���,���$�"!" ���/�/$�!�� �!&""������)"$�%��,���!��+&��%
������ �����!&"�$�%&�%�"#�$'#����" �$���*��������%�������!��
BARGENTO 2014 !conférence
MAGENTO 1.X!MAGENTO 2 is to migrate or not to migrate THE RIGHT QUESTION ?
MAGENTO 2
Magento 1.x : historique & contexte Magento 2 : pourquoi une si longue attente ? Magento 1.x Vs. Magento 2.x Magento 2 : roadmap & bilan
1
2
3
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
4
MAGENTO 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 ?
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
Avant MAGENTO ?
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 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 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!
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
MAGENTO aujourd’hui ?!
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
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
250k! • sites Magento en production • 30% du top 100k Alexa
6.000! • modules disponibles sur Magento Connect
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
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
Mais surtout… !
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
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
7 années de développement ! • 2007 – 2014
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 2 �M A G E N T O 2 : p o u r q 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�
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!
MAGENTO 2 !M A G E N T O 2 : p o u r q 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!
MAGENTO 2 !M A G E N T O 2 : p o u r q u o i u n e s i l o n g u e a t t e n t e ?
������������������������������ �
MAGENTO 2 �M A G E N T O 2 : p o u r q 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 �
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
Mais cette attente est finalement une très bonne chose !
MAGENTO 2 !M A G E N T O 2 : p o u r q u o i u n e s i l o n g u e a t t e n t e ?
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
MAGENTO 2 !M A G E N T O 2 : p o u r q 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!
« Good things take time. Great things take a long time. »
(et ce n’est pas moi qui le dit…)
MAGENTO 2 !M A G E N T O 2 : p o u r q u o i u n e s i l o n g u e a t t e n t e ?
������������������������������ �
MAGENTO 2 �M A G E N T O 1 . x V s . M A G E N T O 2 . x : t r a n s p a r e n c e �
•� 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) �
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
« Do we have a roadmap ? Yes, we have a roadmap. »
Will you share it with us ?!
« No, we won’t share it with you. Check Github. »
MAGENTO 2 !M A G E N T O 1 . x V s . M A G E N T O 2 . x : t r a n s p a r e n c e
MAGENTO 2 �M A G E N T O 1 . x V s . M A G E N T O 2 . x : t e c h n o l o g i e s �
ZF1 (ZF2 ?)��
Côté serveur �
MAGENTO 2 �M A G E N T O 1 . x V s . M A G E N T O 2 . x : t e c h n o l o g i e s �
ZF1 (ZF2 ?)��
Côté serveur �
������������������������������ �
MAGENTO 2 �M A G E N T O 1 . x V s . M A G E N T O 2 . x : t e c h n o l o g i e s �
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. �
������������������������������ �
MAGENTO 2 �M A G E N T O 1 . x V s . M A G E N T O 2 . x : t e c h n o l o g i e s �
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.�
������������������������������ �
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 �
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 �
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
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
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
save EAV 4% cleanCache BS
8%
cleanCache AS 8%
indexation 76%
divers 4%
MA
GEN
TO 2
!M
AG
EN
TO
1.x
Vs.
MA
GE
NT
O 2
.x :
per
form
ance
s Sauvegarde produit lente ? !
$product->save(); !
save EAV cleanCache BS cleanCache AS indexation divers
������������������������������ �
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 �
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 �
������������������������������ �
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 �
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 �
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 �
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, ...��
•� 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�
MAGENTO 2 �P e r s o n n a l i s a t i o n �
MAGENTO 2 !P e r s o n n a l i s a t i o n
Catalog
Configurable Product
Grouped Product
Layered Navigation
Bundle (1.x)
Downloadable (1.x)
Checkout
Checkout Agreements
Multi Shipping
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 �
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�
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é
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 ��
Suite de tests automatisés�
unitaires (fonctions)�
intégration (produit)�
statiques (qualité)�performances�
obsolescence (code 1.x)�
MA
GEN
TO 2�
Qua
lité
�
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 »
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… !
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
MAGENTO 2 �F o n c t i o n n a l i t é s �
Supposées… �
0
20
40
60
80
100
120
Import/export
CMS Staging Reporting Recherche
Votes
Fonctionnalités les plus demandées au MLUK 2014 (extrait, sur 628 votes) �
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
MAGENTO 2 !R o a d m a p & b i l a n
Release prévue pour : ! Q2 2012 Q4 2012 Q1 2013 Q4 2013
2015 ? !
MAGENTO 2 !R o a d m a p & 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
BARGENTO!2014!–!E/COMMERCE!ACADEMY!
« 1.x maintenue 3 ans »! Migration automatisée partielle, si conforme aux
standards !
Gabriel BOUHATOUS@expert_magento / [email protected]
Interrogez directement notre expert !stand 15