Sécurité et performanceSecurity and performanceSOLDES: N’embouteillez pas vos clients dans vos rayons !
Performance barcampfinal
Performance barcampfinal
Sébastien LucasDirecteur associé Oxalideslu@oxalide.comQui sommes nous ?About us ?Rémi GaillardDéveloppeur  PrestaShopremi.gaillard@prestashop.com
Infogérance, design et conception d’infrastructure,Infrastructure Design, Hosting & Facilities management,Surveillance 24x7 proactive,24x7 monitoring,Optimisation et troubleshooting,Fine tuning and troubleshooting,Hébergeur de Prestashop et de ses clients depuis 2007Host of Prestashop & customerssince 2007Oxalide team
Etude de cas : BebeoUse case : Bebeo3 boutiques stores              Z-enfant, 	   Tartine et Chocolat ,	    MelijoeUn catalogue de plusieurs dizaines de milliers de produitsTens of thousands of productsPlusieurs milliers de ventespar jours Several thousands of sales per dayUne multiplication du trafic par 10 pendant les soldesTraffic increase by 10 during sales
Utilisez la dernière version stable de PrestashopUse the last stable version of PrestaShopSupprimez ou désactivez les modules et fonctionnalités non utiliséesRemove or disable unused modules and featuresDésactivez le module de statistiques et utilisez un outil externe (Google Analytics, Weborama, ...)Disable the statistics module and use external tool (Google Analytics, Weborama, ...)Configurez au mieux PrestaShopPrestaShop Configuration
Statique : qui n’est pas dynamiqueStatic : whichis not dynamicRendez statiques un maximum d’éléments :Page d’accueilLanding pagePage d’erreur 404404 errorListe des catégoriesCategory listing…La clé de la performance : pensez statique!Improve performance: thinkstatic!
Videz les tables de statistiquesTruncatestatisticstablesSupprimez les paniers inutilisésRemoveunusedcartsSupprimez les bons de réduction expirésRemoveexpired discountsContenu de la base de donnéesDatabase content
Un design d’architecture scalable & fiableDesigned for scalability & reliabilitySéparation des couches applicatives (Cache, PHP et BDD),Separatelayers : caching, PHP & DatabasesPenser scalabilitéThinkscalableRépartition de chargeImplementloadbalancing for multiple front-ends
Optimisez le contenu statiqueThinkstaticConnectedusers17896SquidVarnishHTMLHTMLHTML25LighttpdLighttpdApache + PHPLighttpdPshop3Apache + PHP/img/css/jsPshop34MySQLd
Utilisez des serveurs de caches,Use reverse proxieswith a tunedpolicy,Séparez HTML, JS et CSS sur des noms de domaines différents,Separate HTML, Jscript & CSS on dedicated FQDN,Optimisez la délivrance du contenu statique avec un Webserver optimisé (Lighttpd ou nginx),Dedicate a specific and fine tuned web server to deliverstatic contents,Maximisez l’utilisation du cache du navigateurFeel confortable using  browser caching
Configuration optimisée d’apache et de PHP (faible empreinte mémoire, adapté pour une trafic élevé, …)Finetuned apache and php configuration (lowmemoryfingerprint, reliablebehaviour on highamount of trafic)Utilisez un système de cache d’opcode PHP (APC ou eAccelerator)Use an opcodecaching system for PHP (APC or eAccelerator)Implémentez un politique de Rewriting d’url statiqueUse a staticpolicy for the Url Rewriting rulesOptimisez MySQL pour pourInnoDBFinetune MySQL for InnoDBConfiguration serveur orientée performanceFinetune system & services
Charge : Augmentez le nombre de frontauxWhenneeded : Use yourscalability16Load Balancer25Apache + PHPApache + PHPApache + PHPApache + PHP4PshopPshopPshopPshop3front-01front-02front-03front-0XMySQLdMySQLdDB-SlaveDB-Master
Augmentez le nombre de frontaux pour augmenter la capacité de traitementIncrease the number of yourfront-ends
Utilisez des frontaux virtuels pour les moments clés (Soldes, Fêtes, etc.)Use virtual « on demand » servers for yourkey moments (sales, …)
Attention au goulot d’étranglement sur le Master BDDRemainalert as to the behavior of yourdatabaseUtiliser un serveur esclaveUse slave server16Load Balancer25Apache + PHPApache + PHPApache + PHPApache + PHP34PshopPshopPshopPshopWritein DBInstant readReadin DBfront-01front-02front-03front-0XMySQLdMySQLd
Classe Db  :privatestatic$_servers = array(   array('server' => _DB_SERVER_, 'user' => _DB_USER_, 'password' => _DB_PASSWD_, 'database' => _DB_NAME_), array('server' => '192.168.0.3', 'user' => 'myuser', 'password' => 'mypassword', 'database' => 'mydatabase'));Séparation des requêtes:Split queries:Ecriture (insert, update),Writing
Lecture instantanée (panier,commandes…),Instant reading (cart,orders…)
Lecture (Catalogue, produits..)Reading(Catalog, products…)Charge : Scalabilité des slavesLoad : Scalabilityof		  slaves16Load Balancer25Classe DbOuUtiliser un load balancerUse a transparent load balancer34Writein DBInstant readReadin DBApache + PHPApache + PHPApache + PHPApache + PHPPshopPshopPshopPshopLoad BalancerMySQLdfront-01front-02front-03front-0XDB-MasterMySQLdMySQLdMySQLdDB-SlaveDB-SlaveDB-Slave

Contenu connexe

PPTX
Sécurité et performance, comment bien optimiser PrestaShop
PDF
EDW Microsoft/Netezza
PPT
Architectures réparties en environnement web
PPT
[Paroles de DSI] NetApp - Comment conjuguer croissance et gestion de données ...
PDF
Pj hug 07_04_2016
PPTX
Barcamp 3 PrestaShop - Conférence Optimisations et Hébergement de votre site ...
PDF
L'Essentiel : Cloud Object Storage IBM
PPTX
Claranet vdc juillet 2013
Sécurité et performance, comment bien optimiser PrestaShop
EDW Microsoft/Netezza
Architectures réparties en environnement web
[Paroles de DSI] NetApp - Comment conjuguer croissance et gestion de données ...
Pj hug 07_04_2016
Barcamp 3 PrestaShop - Conférence Optimisations et Hébergement de votre site ...
L'Essentiel : Cloud Object Storage IBM
Claranet vdc juillet 2013

En vedette (20)

PPTX
Docker open stack
PDF
Clusif panoramadelacybercrimalite2009
PDF
Andrei Petcu: Rocket vs Docker: Battle for the Linux Container at I T.A.K.E. ...
PPTX
Varnish & blue/green deployments
PDF
Oxalide Academy : Workshop #3 Elastic Search
PPT
201211 drupagora hostingdrupal
PDF
Clusif panoramadelacybercrimalite2009
PDF
AgoraCMS 2014 : Les bonnes pratiques de l'hébergement d'un CMS pour une meill...
PDF
Comprendre pour choisir son hébergement
PPTX
Gérer 100 000 visites par jour avec Magento - Les enjeux e-commerce de Prisma...
PPTX
Les bonnes pratiques d'une architecture logicielle et infrastructure de l'héb...
PPTX
Simple, Scalable and Secure Networking for Data Centers with Project Calico
PDF
Mesos Networking
PDF
Kuryr + open shift
PDF
Deploying WSO2 Middleware on Kubernetes
PDF
ISO 27001 est-il soluble dans l'agilité ?
PDF
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
PPTX
Docker compose
PPTX
Intro to Project Calico: a pure layer 3 approach to scale-out networking
PDF
Introduction to Docker
Docker open stack
Clusif panoramadelacybercrimalite2009
Andrei Petcu: Rocket vs Docker: Battle for the Linux Container at I T.A.K.E. ...
Varnish & blue/green deployments
Oxalide Academy : Workshop #3 Elastic Search
201211 drupagora hostingdrupal
Clusif panoramadelacybercrimalite2009
AgoraCMS 2014 : Les bonnes pratiques de l'hébergement d'un CMS pour une meill...
Comprendre pour choisir son hébergement
Gérer 100 000 visites par jour avec Magento - Les enjeux e-commerce de Prisma...
Les bonnes pratiques d'une architecture logicielle et infrastructure de l'héb...
Simple, Scalable and Secure Networking for Data Centers with Project Calico
Mesos Networking
Kuryr + open shift
Deploying WSO2 Middleware on Kubernetes
ISO 27001 est-il soluble dans l'agilité ?
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Docker compose
Intro to Project Calico: a pure layer 3 approach to scale-out networking
Introduction to Docker
Publicité

Similaire à Performance barcampfinal (20)

PDF
Gestion des performances Magento et Hebergement
 
ODP
Kiwiparty 2011 - Optimisation des sites internet
PDF
Virtua : Performances Magento : Solutions efficaces et accessibles
PPT
Conférence AFUP 20minutes.Fr
PPTX
Performance et optimisation de PrestaShop
PPTX
Amélioration des performances eCommerce - Webinaire par aYaline
PPTX
Scalabilité et haute performance d'application PHP légacy
PDF
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
PDF
Techniques d'accélération des pages web
PPTX
Talk performance web
PDF
Optimiser WordPress
PDF
Optimiser wordpress
PDF
Smile Suisse : Comment faire de Magento sa plateforme ecommerce
PDF
Accélération des pages Web : les bases en exemple
PDF
Livre blanc du monitoring
PPT
1. Prestashop - Pré-requis
PDF
Les performances sur des développements PhP
PDF
Webperf : par où commencer ? - SEOGoodVibes
PDF
Web Perf : par où commencer ? #SEOGoodVibes
PPTX
PrestaShop Day Paris - le futur de PrestaShop
Gestion des performances Magento et Hebergement
 
Kiwiparty 2011 - Optimisation des sites internet
Virtua : Performances Magento : Solutions efficaces et accessibles
Conférence AFUP 20minutes.Fr
Performance et optimisation de PrestaShop
Amélioration des performances eCommerce - Webinaire par aYaline
Scalabilité et haute performance d'application PHP légacy
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
Techniques d'accélération des pages web
Talk performance web
Optimiser WordPress
Optimiser wordpress
Smile Suisse : Comment faire de Magento sa plateforme ecommerce
Accélération des pages Web : les bases en exemple
Livre blanc du monitoring
1. Prestashop - Pré-requis
Les performances sur des développements PhP
Webperf : par où commencer ? - SEOGoodVibes
Web Perf : par où commencer ? #SEOGoodVibes
PrestaShop Day Paris - le futur de PrestaShop
Publicité

Plus de Oxalide (17)

PPTX
Terraform & Vault - Un duo d'enfer!
PDF
Workshop Docker & Kubernetes - Oxalide Academy
PDF
Morning Tech#1 BigData - Oxalide Academy
PDF
Meetup Paris Monitoring #9 : Un système de gestion et de visualisation des al...
PDF
Morning tech #2 - Démarche performance slides
PPTX
Paris hackers Meetup #12 - How to handle large audience
PDF
La performance de vos applications Drupal
PDF
Cloud & physique, mauvaises et bonnes solutions
PDF
Clusif cloud-2010-datacenter
PDF
Clusif cloud-2010-securite
PDF
Monitoring Des Applications Php, Salon Des Solutions Linux Open Source
PDF
Les bonnes pratiques de l'hébergement e-commerce open-source (Conférence E Co...
PDF
200907 Petit Dejeuner Optimisation coûts 20m
PDF
200907 Petit Dejeuner Cloud Computing
PDF
200907 Petit Dejeuner Reduction Couts
PDF
Barcamp Prestashop - Améliorer la disponibilité
PPT
Retour d'expérience sur Capistrano
Terraform & Vault - Un duo d'enfer!
Workshop Docker & Kubernetes - Oxalide Academy
Morning Tech#1 BigData - Oxalide Academy
Meetup Paris Monitoring #9 : Un système de gestion et de visualisation des al...
Morning tech #2 - Démarche performance slides
Paris hackers Meetup #12 - How to handle large audience
La performance de vos applications Drupal
Cloud & physique, mauvaises et bonnes solutions
Clusif cloud-2010-datacenter
Clusif cloud-2010-securite
Monitoring Des Applications Php, Salon Des Solutions Linux Open Source
Les bonnes pratiques de l'hébergement e-commerce open-source (Conférence E Co...
200907 Petit Dejeuner Optimisation coûts 20m
200907 Petit Dejeuner Cloud Computing
200907 Petit Dejeuner Reduction Couts
Barcamp Prestashop - Améliorer la disponibilité
Retour d'expérience sur Capistrano

Performance barcampfinal

  • 1. Sécurité et performanceSecurity and performanceSOLDES: N’embouteillez pas vos clients dans vos rayons !
  • 4. Sébastien LucasDirecteur associé [email protected] sommes nous ?About us ?Rémi GaillardDéveloppeur [email protected]
  • 5. Infogérance, design et conception d’infrastructure,Infrastructure Design, Hosting & Facilities management,Surveillance 24x7 proactive,24x7 monitoring,Optimisation et troubleshooting,Fine tuning and troubleshooting,Hébergeur de Prestashop et de ses clients depuis 2007Host of Prestashop & customerssince 2007Oxalide team
  • 6. Etude de cas : BebeoUse case : Bebeo3 boutiques stores Z-enfant, Tartine et Chocolat , MelijoeUn catalogue de plusieurs dizaines de milliers de produitsTens of thousands of productsPlusieurs milliers de ventespar jours Several thousands of sales per dayUne multiplication du trafic par 10 pendant les soldesTraffic increase by 10 during sales
  • 7. Utilisez la dernière version stable de PrestashopUse the last stable version of PrestaShopSupprimez ou désactivez les modules et fonctionnalités non utiliséesRemove or disable unused modules and featuresDésactivez le module de statistiques et utilisez un outil externe (Google Analytics, Weborama, ...)Disable the statistics module and use external tool (Google Analytics, Weborama, ...)Configurez au mieux PrestaShopPrestaShop Configuration
  • 8. Statique : qui n’est pas dynamiqueStatic : whichis not dynamicRendez statiques un maximum d’éléments :Page d’accueilLanding pagePage d’erreur 404404 errorListe des catégoriesCategory listing…La clé de la performance : pensez statique!Improve performance: thinkstatic!
  • 9. Videz les tables de statistiquesTruncatestatisticstablesSupprimez les paniers inutilisésRemoveunusedcartsSupprimez les bons de réduction expirésRemoveexpired discountsContenu de la base de donnéesDatabase content
  • 10. Un design d’architecture scalable & fiableDesigned for scalability & reliabilitySéparation des couches applicatives (Cache, PHP et BDD),Separatelayers : caching, PHP & DatabasesPenser scalabilitéThinkscalableRépartition de chargeImplementloadbalancing for multiple front-ends
  • 11. Optimisez le contenu statiqueThinkstaticConnectedusers17896SquidVarnishHTMLHTMLHTML25LighttpdLighttpdApache + PHPLighttpdPshop3Apache + PHP/img/css/jsPshop34MySQLd
  • 12. Utilisez des serveurs de caches,Use reverse proxieswith a tunedpolicy,Séparez HTML, JS et CSS sur des noms de domaines différents,Separate HTML, Jscript & CSS on dedicated FQDN,Optimisez la délivrance du contenu statique avec un Webserver optimisé (Lighttpd ou nginx),Dedicate a specific and fine tuned web server to deliverstatic contents,Maximisez l’utilisation du cache du navigateurFeel confortable using browser caching
  • 13. Configuration optimisée d’apache et de PHP (faible empreinte mémoire, adapté pour une trafic élevé, …)Finetuned apache and php configuration (lowmemoryfingerprint, reliablebehaviour on highamount of trafic)Utilisez un système de cache d’opcode PHP (APC ou eAccelerator)Use an opcodecaching system for PHP (APC or eAccelerator)Implémentez un politique de Rewriting d’url statiqueUse a staticpolicy for the Url Rewriting rulesOptimisez MySQL pour pourInnoDBFinetune MySQL for InnoDBConfiguration serveur orientée performanceFinetune system & services
  • 14. Charge : Augmentez le nombre de frontauxWhenneeded : Use yourscalability16Load Balancer25Apache + PHPApache + PHPApache + PHPApache + PHP4PshopPshopPshopPshop3front-01front-02front-03front-0XMySQLdMySQLdDB-SlaveDB-Master
  • 15. Augmentez le nombre de frontaux pour augmenter la capacité de traitementIncrease the number of yourfront-ends
  • 16. Utilisez des frontaux virtuels pour les moments clés (Soldes, Fêtes, etc.)Use virtual « on demand » servers for yourkey moments (sales, …)
  • 17. Attention au goulot d’étranglement sur le Master BDDRemainalert as to the behavior of yourdatabaseUtiliser un serveur esclaveUse slave server16Load Balancer25Apache + PHPApache + PHPApache + PHPApache + PHP34PshopPshopPshopPshopWritein DBInstant readReadin DBfront-01front-02front-03front-0XMySQLdMySQLd
  • 18. Classe Db :privatestatic$_servers = array( array('server' => _DB_SERVER_, 'user' => _DB_USER_, 'password' => _DB_PASSWD_, 'database' => _DB_NAME_), array('server' => '192.168.0.3', 'user' => 'myuser', 'password' => 'mypassword', 'database' => 'mydatabase'));Séparation des requêtes:Split queries:Ecriture (insert, update),Writing
  • 20. Lecture (Catalogue, produits..)Reading(Catalog, products…)Charge : Scalabilité des slavesLoad : Scalabilityof slaves16Load Balancer25Classe DbOuUtiliser un load balancerUse a transparent load balancer34Writein DBInstant readReadin DBApache + PHPApache + PHPApache + PHPApache + PHPPshopPshopPshopPshopLoad BalancerMySQLdfront-01front-02front-03front-0XDB-MasterMySQLdMySQLdMySQLdDB-SlaveDB-SlaveDB-Slave