PerformancesMagento- de la théorie à la pratique -
FrédéricDE GOMBERTDirecteur e-business chez Smile@FdeGombert
« mon point fort, si j’en aiun, c’est la performance.J’en fais toujours plus quece que je dis.Je produis toujours plusque ...
La performanceest une préoccupation majeure  pour tout e-commerçant…
Mais qu’est ce que la performance          exactement ?
La vitesse de chargement       d’une page ?
La capacité à absorber de   gros pics de trafic ?
La capacité à gérer detrès gros catalogues ?
Les trois à la fois ?
La performance est une     fonctionnalité
Comme toute fonctionnalité, elle doit être :            •    anticipée            •    spécifiée            •    mesurée  ...
On entend beaucoup de chosesà propos des performances de         Magento…
Magento                             Magento, c’est pour lesc’est lent!                        petits sites, on peut pas   ...
Alors de quoi est réellement    capable Magento ?
« Avant, on se moquait de moi… »
« … mais ça, c’était avant… »
Les performances actuelles de laplateforme n’ont rien à voir avec      celles de ses débuts.
Historique des avancées de Magento                                                                                        ...
Pour en avoir le cœur net,nous avons lancée une grande    campagne de tests…
Objectif : tester la survie de     Magento dans unenvironnement « extrême »
Voici les résultats pour      un serveur :
41pages par seconde
13 423mises au panier par       heure
121Commandes par heure
1 525 200Visites par mois
Pour une plateforme à 20 frontaux(limite théorique observée pour une seule base de données)
28 MDe Visiteurs par mois
22 M€De CA mensuelPour un panier moyen de 20€
112 M€De CA mensuelPour un panier moyen de 100€
« moi je ne crois quece que je vois… »Saint thomasclient exigeant
2 enjeux principaux :-    Réduire au maximum la charge sur les     frontaux Magento-    Conserver un temps de réponse     ...
MISSION #1 :Réduire la charge par      frontal
Moins de charge sur les frontaux              =       Moins de serveurs
il faut une (bonne)stratégie de cache
Le FPC de Magento est intéressant sur le papier maispossède deux limites structurelles…
Il nécessite un accès aux frontaux Magento pour      fonctionner… (et au moins 20 appels à MySQL)
… et il ne permet pas de faire     du cache par blocs.
Avec un peu d’AJAX  on va pouvoir extraire les     fragments de pagene pouvant être mis en cache
Avec VARNISHon met l’ensemble des pages en             cache
Conclusion #1 +     = 80%         de poussière         DE charge absorbée
Varnish se rafraichit grâce à un            TTL          (Time To Live)
Le cache est donc mis à jour      périodiquement
Dans certains cas,c’est un problème !
Animation front-office     soutenue
Multitude de règles impactant   le TTL de chaque page
Nécessité de faire communiquerdes évènements Magento avec            Varnish
VARNIGENTO
MISSION #2  Conserver un temps dechargement identique ou que     soit l’internaute
Le recours à un CDN       est une bonne pratiquepour un site à dimension internationale
Ce qu’on met dans un CDN :      •    Images      •    Vidéos      •    Javascript      •    CSS      •    Blocs HTML
Conclusion #2   Les cdn permettent de réduiresignificativement la latence induite           par la distance
« Pour ce qui est del’avenir, il ne s’agitpas de le prévoirmais de le rendrepossible.»Saint-Exupéryclient ambitieux
Un bon indicateur de laperformance d’une solution est   sa scalabilité
La scalabilité est la capacitéd’une plateforme a être étendue      pour s’adapter à une    augmentation de trafic
On distingue deux types de         scalabilité
La scalabilité horizontale
La scalabilité verticale
Pas de problème de scalabilité pour les frontaux Magento…
…mais il y a un maillon faible!
Et si on imaginait un Magento           (presque)       sans MySQL ?
NOSQL (not only SQL)
Avec NoSQL,plus de problèmes de scalabilité          horizontale
Et surtout …
Plus de modèleEAV
MongoGENTO
« La réponse est oui.Mais quelle était laquestion ?»Woody allenclient peu contrariant
Prochain SlideShare
Chargement dans…5
×

Performances Magento - De la théorie à la pratique

1 127 vues

Publié le

Support de présentation de la conférence sur l'optimisation des performances de Magento donnée par Smile à l'occasion du salon Paris E-commerce en octobre 2012.

Publié dans : Technologie
0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 127
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Performances Magento - De la théorie à la pratique

  1. 1. PerformancesMagento- de la théorie à la pratique -
  2. 2. FrédéricDE GOMBERTDirecteur e-business chez Smile@FdeGombert
  3. 3. « mon point fort, si j’en aiun, c’est la performance.J’en fais toujours plus quece que je dis.Je produis toujours plusque ce que je promets…»Richard nixonclient modeste
  4. 4. La performanceest une préoccupation majeure pour tout e-commerçant…
  5. 5. Mais qu’est ce que la performance exactement ?
  6. 6. La vitesse de chargement d’une page ?
  7. 7. La capacité à absorber de gros pics de trafic ?
  8. 8. La capacité à gérer detrès gros catalogues ?
  9. 9. Les trois à la fois ?
  10. 10. La performance est une fonctionnalité
  11. 11. Comme toute fonctionnalité, elle doit être : •  anticipée •  spécifiée •  mesurée •  révisée
  12. 12. On entend beaucoup de chosesà propos des performances de Magento…
  13. 13. Magento Magento, c’est pour lesc’est lent! petits sites, on peut pas supporter des gros pics de trafic avec… Il parait que Magento, c’est une usine à gaz? (en plus c’est du PHP...) J’ai entendu dire que chez Magento, ils faisaient exprès d’avoir un outil pas trop performant pour vendre plus de licences…
  14. 14. Alors de quoi est réellement capable Magento ?
  15. 15. « Avant, on se moquait de moi… »
  16. 16. « … mais ça, c’était avant… »
  17. 17. Les performances actuelles de laplateforme n’ont rien à voir avec celles de ses débuts.
  18. 18. Historique des avancées de Magento EE  v1.11   EE  v1.9   FPC   EE  v1.8   SolR  Performances   CE  v1.6   CE  v1.3   Flat   catalog   CE  v1.5   CE   FPC   V1.0   Magento   Entreprise   mars  2008   avril  2009   décembre  2009   avril  2010   février  2011   mai  2011   août  2011   avril  2012   Temps  
  19. 19. Pour en avoir le cœur net,nous avons lancée une grande campagne de tests…
  20. 20. Objectif : tester la survie de Magento dans unenvironnement « extrême »
  21. 21. Voici les résultats pour un serveur :
  22. 22. 41pages par seconde
  23. 23. 13 423mises au panier par heure
  24. 24. 121Commandes par heure
  25. 25. 1 525 200Visites par mois
  26. 26. Pour une plateforme à 20 frontaux(limite théorique observée pour une seule base de données)
  27. 27. 28 MDe Visiteurs par mois
  28. 28. 22 M€De CA mensuelPour un panier moyen de 20€
  29. 29. 112 M€De CA mensuelPour un panier moyen de 100€
  30. 30. « moi je ne crois quece que je vois… »Saint thomasclient exigeant
  31. 31. 2 enjeux principaux :-  Réduire au maximum la charge sur les frontaux Magento-  Conserver un temps de réponse stable, quelque soit la distance de l’internaute avec le centre d’hébergement
  32. 32. MISSION #1 :Réduire la charge par frontal
  33. 33. Moins de charge sur les frontaux = Moins de serveurs
  34. 34. il faut une (bonne)stratégie de cache
  35. 35. Le FPC de Magento est intéressant sur le papier maispossède deux limites structurelles…
  36. 36. Il nécessite un accès aux frontaux Magento pour fonctionner… (et au moins 20 appels à MySQL)
  37. 37. … et il ne permet pas de faire du cache par blocs.
  38. 38. Avec un peu d’AJAX on va pouvoir extraire les fragments de pagene pouvant être mis en cache
  39. 39. Avec VARNISHon met l’ensemble des pages en cache
  40. 40. Conclusion #1 + = 80% de poussière DE charge absorbée
  41. 41. Varnish se rafraichit grâce à un TTL (Time To Live)
  42. 42. Le cache est donc mis à jour périodiquement
  43. 43. Dans certains cas,c’est un problème !
  44. 44. Animation front-office soutenue
  45. 45. Multitude de règles impactant le TTL de chaque page
  46. 46. Nécessité de faire communiquerdes évènements Magento avec Varnish
  47. 47. VARNIGENTO
  48. 48. MISSION #2 Conserver un temps dechargement identique ou que soit l’internaute
  49. 49. Le recours à un CDN est une bonne pratiquepour un site à dimension internationale
  50. 50. Ce qu’on met dans un CDN : •  Images •  Vidéos •  Javascript •  CSS •  Blocs HTML
  51. 51. Conclusion #2 Les cdn permettent de réduiresignificativement la latence induite par la distance
  52. 52. « Pour ce qui est del’avenir, il ne s’agitpas de le prévoirmais de le rendrepossible.»Saint-Exupéryclient ambitieux
  53. 53. Un bon indicateur de laperformance d’une solution est sa scalabilité
  54. 54. La scalabilité est la capacitéd’une plateforme a être étendue pour s’adapter à une augmentation de trafic
  55. 55. On distingue deux types de scalabilité
  56. 56. La scalabilité horizontale
  57. 57. La scalabilité verticale
  58. 58. Pas de problème de scalabilité pour les frontaux Magento…
  59. 59. …mais il y a un maillon faible!
  60. 60. Et si on imaginait un Magento (presque) sans MySQL ?
  61. 61. NOSQL (not only SQL)
  62. 62. Avec NoSQL,plus de problèmes de scalabilité horizontale
  63. 63. Et surtout …
  64. 64. Plus de modèleEAV
  65. 65. MongoGENTO
  66. 66. « La réponse est oui.Mais quelle était laquestion ?»Woody allenclient peu contrariant

×