ConfĂŠrence MAGENTO avec Varien et ses partenaires experts Convention e-commerce 2009
Les intervenants
L’éditeur de Magento, Varien : Yoav Kutner, CTO Amit Shah, responsable Europe Les experts Magento : Fragento, Gabriel Bouhatous Profileo,Tristan Jacques Zend, Alban Hanry NBS System, René Amirkhanian Communauté Magento France, Sébastien Lepers Magento Academy, Fabrice Beck
Introduction
ConfĂŠrence MAGENTO avec Varien et ses partenaires experts Convention e-commerce Paris 2009
L’expert en bref : Gabriel Bouhatous L’Expertise Magento
Expert Magento indépendant Développements Formation Expérience unique et reconnue Relation privilégiée avec l’éditeur Varien Projets d’envergure dont Linea Chic Engagement Communautaire : Fragento, Bargento, Videogento
L’expert en bref : Gabriel Bouhatous
Varien, l’Editeur de Magento Varien, the Magento Company
Editeur de Magento Varien, the Magento Company A l’origine, une agence webdesign Started as web design agency Spécialistes OS Commerce ; 100 sites entre 2001 et 2006 Used OS Commerce ; built over 100 sites from 2001 to 2006 Développer une nouvelle solution basée sur les besoins clients Decided in 2007 to build a new open source software solution based on customer needs
Une solution puissante Powerful solution
RICHE EN FONCTIONNALITÉS STABLE FLEXIBLE FEATURE-RICH, STABLE, FLEXIBLE
Une forte popularité en constante augmentation
Performance Has Been Strong and a Large Community Has Evolved 800000
90000
700000
80000 70000
600000
60000 500000 50000 400000 40000 300000 30000 200000
20000
100000
10000
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
0
1
2
7
8
9
10
11
12 13
14 15
16 17
18 19
20 21
22 23
24 25
26 27
28 29
30
31 32
33 34
35 36
37 38
39 40
41 42
43 44
45 46
47 48
49
50 51
52 53
54 55
56 57
58 59
60 61
62 63
64 65
66 67
68
69 70
71 72
73 74
75 76
77 78
79 80
81 82
83 84
85 86
87
88 89
90 91
92 93
94 95
96 97
98 99 100101 102103 104105 106 107108 109110 111112 113114 115116 117118 119120 121122 123124 125 126127 128129 130131 132133 134135 136137 138139 140141 142143 144 145146 147148 149150 151152 153154 155156 157158 159160 161162 163 164165 166167 168169 170171 172173 174175 176177 178179 180181 182 183184 185186 187188 189190 191192 193194 195196 197198 199200 201 202203 204205 206207 208209 210211 212213 214215 216217 218219 220 221222 223224 225226 227228 229230
Live instances (120,000+)
120000
100000
100000
80000
80000
60000
60000
40000
40000
20000
20000
7
6
Sites Magento (+ de 120 000)
120000
4
5
Downloads (1,100,000+) 140000
1
4
Téléchargements (+ de 1.1M) 140000
0
3
10
13
16
19
22
25
28
31
34
37
40
43
46
49
52
55
58
61
64
67
70
73
76
79
82
85
88
91
94
97
100 103 106 109 112 115 118 121 124 127 130 133 136 139 142 145 148 151 154 157 160 163 166 169 172 175 178 181 184 187 190 193 196 199 202 205 208 211 214 217 220 223 226 229 232 235 238 241 244 247 250 253 256 259 262 265 268 271 274 277 280 283 286 289 292 295 298 301 304 307 310 313 316 319 322 325 328 331 334 337 340 343 346 349 352 355 358 361 364 367 370 373 376 379 382 385 388 391 394 397 400 403 406 409 412 415 418 421 424 427 430 433 436 439 442 445 448 451 454 457 460 463 466 469 472 475 478 481 484 487 490 493 496 499 502 505 508 511 514 517 520 523 526 529 532 535 538 541 544 547 550 553 556 559 562 565 568 571 574 577 580 583 586 589 592
Membres de la Communauté (+ de 135 000) Community members (135,000+)
0
1
4
7
10
13
16
19
22
25
28
31
34
37
40
43
46
49
52
55
58
61
64
67
70
73
76
79
82
85
88
91
94
97
100 103 106 109 112 115 118 121 124 127 130 133 136 139 142 145 148 151 154 157 160 163 166 169 172 175 178 181 184 187 190 193 196 199 202 205 208 211 214 217 220 223 226 229 232 235 238 241 244 247 250 253 256 259 262 265 268 271 274 277 280 283 286 289 292 295 298 301 304 307 310 313 316 319 322 325 328 331 334 337 340 343 346 349 352 355 358 361 364 367 370 373 376 379 382 385 388 391 394 397 400 403 406 409 412 415 418 421 424 427 430 433 436 439 442 445 448 451 454 457 460 463 466 469 472 475 478 481 484 487 490 493 496 499 502 505 508 511 514 517 520 523 526 529 532 535 538 541 544 547 550 553 556 559 562 565 568 571 574 577 580 583 586 589 592
Sujets sur le forum officiel (+ de 235 000) Forum posts on Magento (235,000+)
Deux Editions Two Editions
Références Showcase
UNE SOLUTION BASテ右 SUR LE FRAMEWORK ZEND BASED ON ZEND FRAMEWORK
Partie 1 : Bonnes pratiques c么t茅 Serveur Optimiser et monitorer sa plateforme e-commerce
Zend Technologies The PHP Company
Contributeur sur 4 communautés Open Source : • PHP (Zend Engine) • Eclipse PDT • Zend Framework • Et dernièrement : SimpleCloud.org Offre commerciale pour répondre aux problématiques e-commerce : • Montée en charge • Performances • Disponibilité
Assurer un haut niveau de performances et de disponibilité de Magento
Magento, un socle ouvert et robuste basé sur Zend Framework Magento s’appuie sur un socle technique Un Framework PHP5 Open Source : Zend Framework Un framework ? Accélérer les développements : ne pas réinventer la roue Adopter des standards (méthodes et process) Socle solide Communauté : 80+ contributeurs / testeurs Support et documentation pour 25 langues
Assurer un haut niveau de performances et de disponibilité de Magento
Magento, un socle ouvert et robuste basé sur Zend Framework Orienté business et entreprise Licence BSD Contributor Licence Agreement Zend : Editeur logiciel PHP Gestion de la qualité ( communauté, tests, process) Extensibilité : un framework non contraignant Use at will architecture 80/20 et développements spécifiques Web services et Web 2.0 S’ouvrir aux partenaires S’ouvrir aux utilisateurs
Assurer un haut niveau de performances et de disponibilité de Magento
Zend Server Zend Server est un serveur d’application Web, d’entreprise, complet, pour exécuter et gérer des applications PHP qui demandent un haut niveau de disponibilité, de performance et de sécurité.
Assurer un haut niveau de performances et de disponibilité de Magento
Qu’est-ce que Zend Server ? • Distribution PHP complète pour la production
• Monitoring applicatif et diagnostic des problèmes
• Technologie d’amélioration des performances multicouche
• Support technique, mises à jour et correctifs de sécurité.
Assurer un haut niveau de performances et de disponibilité de Magento
Pourquoi Zend Server ? Haute disponibilité & sécurité
- Distribution PHP certifiée, testée et supportée - Mises à jour logicielles et corrections de sécurité
Haute performances & Disponibilité
- Technologie d’amélioration des performances multicouche
Productivité des équipes
- Temps de maintenance de la distribution PHP minimal
- Monitoring applicatif et analyse des problèmes
- Diminution du temps passé au diagnostic d’erreurs
Assurer un haut niveau de performances et de disponibilité de Magento
2 versions de Zend Server Zend Server Community Edition (CE) • • • • • •
Téléchargement et utilisation libre et gratuite Interface d’administration Web (Apache/IIS) Extension permettant le débogage Connectivité aux bases de données habituelles Optimisations des performances (cache d’opcodes, cache de donnée) Installeur natifs disponibles pour Linux, Windows et Mac OS X
Zend Server •
Toutes les fonctionnalités CE… + Support technique mondial + Application Web de monitoring et d’alerte + Reproduction des problèmes et analyse de la provenance + Cache de page pour améliorer plus encore les performances
Assurer un haut niveau de performances et de disponibilité de Magento
Partie 1 : Bonnes pratiques c么t茅 Serveur Tests de performance Magento avec et sans Zend Server
L’expert en bref : NBS Hébergement & Haute disponibilité
Hébergeur Haute disponibilité Enterprise partner avec Varien 10 ans d’expérience Métiers : hébergement & infogérance, sécurité, conseil, optimisation 3 valeurs : - garder à l’esprit la sécurité des données, de la visibilité et de l’image - obtenir les meilleures performances - assurer la continuité de service en toute circonstance Références : Zadig & Voltaire, Au vieux campeur, Repetto, Furet du nord, Gemo (A venir), Matelpro, Pull-in, etc.
Assurer un haut niveau de performances et de disponibilité de Magento
Pourquoi ce comparatif ? On ne présente plus la solution Magento • Performante mais exigeante techniquement • Consommation élevée de CPU Solution simple : • Plus de puissance, Plus de performance • Optimiser configurations et choix technologiques Conditions de tests: • Un serveur de base de données (MySQL) dédié • Un serveur Web (Apache et Zend Server)
Assurer un haut niveau de performances et de disponibilité de Magento
Méthodologie de test 1. Mesure simple sur la page d’accueil 2. Visite « complète » du site • Navigation dans le catalogue • Recherche • Mise en panier • Checkout Durée d’une session de test : 5min Nb. d’accès simultanés : 5, 10, 20 et 40
Assurer un haut niveau de performances et de disponibilité de Magento
Zend Server Quelques détails sur la configuration du Zend Cache Page que nous utilisons: • Règle mise en place pour la mise en cache des JavaScript (proxy.php) • Règle pour mettre en cache la majorité du site tout en conservant un aspect dynamique
Assurer un haut niveau de performances et de disponibilité de Magento
Zend Server
Assurer un haut niveau de performances et de disponibilitĂŠ de Magento
Zend Server
Assurer un haut niveau de performances et de disponibilitĂŠ de Magento
mod-php vs Zend Server Page d’accueil (catalogue 80k) 70
Nb. Hits / seconds
60 mod-php / Magento 1.3 + Flat Catalogs
50 40 30
Zend Server / Magento 1.3 + Flat Catalogs
20 10 0 5
10
20
NB. De connexions simultanées
40
The bigger, the better
Assurer un haut niveau de performances et de disponibilité de Magento
mod-php vs Zend Server Visite complète (catalogue 80k) 180
Nb. Hits / seconds
160 140 120 100
mod-php + FC
80
ZS + FC
60
ZS + PC + FC
40 20 0 5
10
20
NB. De connexions simultanées
40
The bigger, the better
Assurer un haut niveau de performances et de disponibilité de Magento
mod-php vs Zend Server A retenir :
•
Zend Server… ...même en version gratuite (Community Edition)
•
Le Zend Page Cache est un plus indéniable
Assurer un haut niveau de performances et de disponibilité de Magento
Questions et échanges autour des bonnes pratiques côté serveur
Partie 2 : Bonnes pratiques côté Développement
L’expert en bref : Profileo agence web spécialisée e-commerce Agence web spécialisée e-commerce
open source Un pôle technique dédié Magento 8 ans d’expérience 20 collaborateurs Métiers : création et optimisation, e-marketing et référencement, maintenance et exploitation. Références : Father & Sons, Loft Design by, Zadig & Voltaire, Banque Accor, My Store, Wonderprice, Jean Thiot
Assurer un haut niveau de performances et de disponibilité de Magento
Magento : Richesse des fonctionnalités Une application complète pour gérer son business en ligne :
Des outils de gestion
commerciale et marketing Multi-site et multi-boutique Gestion multi-langue et multi-devises
Assurer un haut niveau de performances et de disponibilité de Magento
Magento : Qualités de son architecture Le code d'un côté, le design de l'autre (appelé modèle MVC)
Pour développer plus vite Pour plus de souplesse
dans le graphisme Pour personnaliser facilement le front (ex. : promo de noël)
Assurer un haut niveau de performances et de disponibilité de Magento
Magento : Une solution 100 % modulaire Magento est ultra-flexible : Le cœur de Magento est lui-même entièrement conçu en modules
Gestion dynamique des modules Bonne pratique : développer uniquement en module
Assurer un haut niveau de performances et de disponibilité de Magento
Magento : Une solution 100 % modulaire 3 types d’extensions : Magento Core Community Commercial
Tout se fait simplement
depuis le back office Les modules s’installent et se mettent à jour automatiquement
Assurer un haut niveau de performances et de disponibilité de Magento
Magento : La puissance des extensions Une personnalisation poussée est possible. Exemple = www.my-store.ch
module de ventes privées module de gestion des retours parrainage social (facebook,
Twitter, Gmail, Msn…) Widget d’alerte de ventes
Assurer un haut niveau de performances et de disponibilité de Magento
Partie 2 : Bonnes pratiques côté Développement Optimisations
Analyse des performances et optimisation avec Zend Server
Zend Server permet:
• de monitorer les performances
du site e-commerce • d'optimiser la performance des sites e-commerce
Assurer un haut niveau de performances et de disponibilitĂŠ de Magento
Obtenir les meilleures performances de Magento
Zend Server - Accélération d’opcodes (Optimizer+)
Magento/Zend Server - Cache natif (Data Cache) Optimisation de l’accès aux données Magento
- Module de compilation
Zend Server – Cache de Page (Page Cache)
Assurer un haut niveau de performances et de disponibilité de Magento
Optimisation avec Zend Server : cache de page (Page Cache) Cache la réponse HTTP complète
Les gains en performance sont généralement très élevés
Ne nécessite généralement pas de modification de code
Assurer un haut niveau de performances et de disponibilité de Magento
Optimisation agence + hébergeur : exemple de cache /js/index.php Travail d’optimisation conjoint Agence + hébergeur : exemple de cache des Javascript au travers de Zend Server
Assurer un haut niveau de performances et de disponibilité de Magento
Partie 3 : L’appui des experts de la communautÊ francophone
La communauté Francophone Lieux d’expression
Assurer un haut niveau de performances et de disponibilité de Magento
La communauté Francophone
Pourquoi une Communauté Magento ? Une solution open-source une communauté impliquée
Une solution gratuite
donnant/donnant, gagnant/gagnant
La communauté Francophone
Pourquoi une Communauté Magento ? tiers de confiance pour la solution > indépendante > liberté de parole et d’actes
contribue à l’évolution et à la pérennité de la solution > combler les imperfections (sécurité & débogage) > force de proposition (améliorations & modules) > Community Advisory Board partage > entraide > documentation > accompagnement, critiques
La communauté Francophone Ses Outils, par et pour Vous Blogs Forums
Groupes Wiki
Traductions Suivi d'anomalies
www.magentocommerce.com/fr Twitter : @magento www.fragento.org Twitter : @fragento
Magento Academy PrĂŠsentation
Assurer un haut niveau de performances et de disponibilitĂŠ de Magento
Roadmap Magento
Magentocommerce.com/roadmap
Dans un futur proche
CMS WYSIWYG Editor CMS Widgets New Indexing Process Url rewrite per store view Compilation Module in Stable
RMS Customer Segments Targeted Merchandizing Rules CMS + Assurer un haut niveau de performances et de disponibilité de Magento
Bargento 3 Le Rendez-Vous de la CommunautĂŠ !
contact@bargento.fr www.bargento.fr
09 novembre 2009
Espace St Martin 199bis rue St Martin – Paris 3
Questions et échanges autour des bonnes pratiques côté développement