SlideShare ist ein Scribd-Unternehmen logo
1 von 16
+




    Performance WEB

      Mettez vos sites sur orbite
+
    Emmanuel QUENTIN

             Architecte logiciel – Nurun



         Développeur certifié PHP & Magento




                @HereIComeSlowly
+




    Running faster
+
    Pourquoi ?

       Taux de conversion
           Un acheteur n’aime pas attendre
           Amazon : Perte d’1% du C.A. toutes les 100ms
           2/5 visiteurs abandonnent leur panier si chargement > 3s




       Référencement
           Pris en compte par Google (officiel)
           30% de poids en moins : 30% de trafic en plus
           Augmentation de la note affectée à AdWords
+
    Pourquoi ?

       Taux de rebond
           500ms de chargement : 20% de recherche en moins chez Google




       Economie de bande passante



       Montée en charge facilitée
+
    Waterfall

        Début du rendu, fin de la page blanche
+
    Waterfall

       Le frontend et le réseau représentent 90% du boulot



       Le téléchargement dépend de
           Recherche DNS (~20/100ms)
           Connexion TCP
           Téléchargement du contenu


       Le Javascript bloque les autres téléchargements (le relou)



       Les navigateurs limitent les téléchargements en parallèle par domaine (les
        relous)
+
    Les solutions côté frontend !

       DNS prefetching
           <link rel="dns-prefetch" href="//assets.foo.com"> # Sauf IE < 10


       Déporter l’inclusion des Javascripts à la fin du <body>


       Rendre asynchrone le chargement des plugins sociaux



       Mettre en place des domaines spécifiques (ou CDN) pour
        augmenter le chargement en parallèle
+
    Les solutions côté frontend !

       Diminuer le temps de chargement et le nombre de requêtes HTTP


           Concatener et minifier les JS/CSS


           Utiliser les sprites pour les images


           Outil d’optimisation d’image (Pngcrush)


           CDN géolocalisé (réduit la latence)
+
    Réduire le reflow

       Quand ?


           Redimensionnement fenêtre


           Changement taille police


           Changement contenu


           Pseudo classe ( :hover )


           Changement de style en JS
+
    Réduire le reflow

       Comment ?


           Diminuer la profondeur du DOM


           Supprimer les règles CSS inutiles


           Simplifier les règles CSS


           Spécifier les dimensions des images
+
    Autour du backend

       Caching HTTP
           Header Expires
           Header ETag (entity tag)


       Caching applicatif
           Fichier, Memcache, Redis
           Cache d’opcode (PHP) : APC, Zend Optimiser (surement dans PHP 5.5)


       Reverse Proxy
           Varnish, Nginx, Squid
+
    Autour du backend

       Serveur WEB
           Compression gzip (mod_deflate d’Apache)
           Module d’expiration (mod_expire d’Apache)




       Base de donnnées
           Index
           Optimisation des requêtes (EXPLAIN, Last_query_cost)
           Table temporaire, dénormalisation
+
    Autour du backend

       Prévoir ses applications de façon scalables


           Master/slave MySQL – NoSQL


           Queue de message (AMQP) : RabbitMQ, ZeroMQ, ZendQueue


           CRON


           Appels I/O asynchrones (NodeJS)
+
    Outils

       Google page speed (module Chrome / Firefox)



       Yslow (module Chrome / Firefox)



       Web page test ( webpagetest.org )
+

Weitere ähnliche Inhalte

Was ist angesagt?

Presentation
PresentationPresentation
Presentation
bois
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejs
naholyr
 

Was ist angesagt? (20)

Presentation
PresentationPresentation
Presentation
 
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin -  cto crunch - 141205 - Optimiser la latence applicative mobileMotwin -  cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
 
La performance de vos applications Drupal
La performance de vos applications DrupalLa performance de vos applications Drupal
La performance de vos applications Drupal
 
RennesJS Talk webperf by Dareboost
RennesJS Talk webperf by DareboostRennesJS Talk webperf by Dareboost
RennesJS Talk webperf by Dareboost
 
Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google Cloud
 
MDDay
MDDayMDDay
MDDay
 
Amélioration des performances eCommerce - Webinaire par aYaline
Amélioration des performances eCommerce - Webinaire par aYalineAmélioration des performances eCommerce - Webinaire par aYaline
Amélioration des performances eCommerce - Webinaire par aYaline
 
Drupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances DrupalDrupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances Drupal
 
Restful
RestfulRestful
Restful
 
Un environnement de développement solide avec wamp
Un environnement de développement solide avec wampUn environnement de développement solide avec wamp
Un environnement de développement solide avec wamp
 
Presentation sur l'hébergement web et du cpanel
Presentation sur l'hébergement web et du cpanelPresentation sur l'hébergement web et du cpanel
Presentation sur l'hébergement web et du cpanel
 
Push Notification
Push Notification Push Notification
Push Notification
 
Css maintenable - Morgane Hervé
Css maintenable - Morgane HervéCss maintenable - Morgane Hervé
Css maintenable - Morgane Hervé
 
Cours 2/3 - Architecture Web
Cours 2/3 - Architecture WebCours 2/3 - Architecture Web
Cours 2/3 - Architecture Web
 
Drupal Performance
Drupal PerformanceDrupal Performance
Drupal Performance
 
Le flash, est-ce pour moi ?
Le flash, est-ce pour moi ? Le flash, est-ce pour moi ?
Le flash, est-ce pour moi ?
 
Windows Azure Web Sites, Cloud Services ou Virtual Machines ? Quelles technol...
Windows Azure Web Sites, Cloud Services ou Virtual Machines ? Quelles technol...Windows Azure Web Sites, Cloud Services ou Virtual Machines ? Quelles technol...
Windows Azure Web Sites, Cloud Services ou Virtual Machines ? Quelles technol...
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejs
 
CasperJS
CasperJSCasperJS
CasperJS
 
Viseo intro Prive Public Cloud vs hosting
Viseo intro Prive Public Cloud vs hostingViseo intro Prive Public Cloud vs hosting
Viseo intro Prive Public Cloud vs hosting
 

Andere mochten auch

Unucr bilan20122013 pour diffusion
Unucr bilan20122013 pour diffusionUnucr bilan20122013 pour diffusion
Unucr bilan20122013 pour diffusion
genevieve38
 
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Universidad Autónoma de Barcelona
 
InVactis Slideshare
InVactis SlideshareInVactis Slideshare
InVactis Slideshare
invactis
 
Revolution dans-deux-pays-arabes
Revolution dans-deux-pays-arabesRevolution dans-deux-pays-arabes
Revolution dans-deux-pays-arabes
delphine42
 
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Arquitecto bogota
 
Ppt présentation cr pour kit adhérent
Ppt présentation cr pour kit adhérentPpt présentation cr pour kit adhérent
Ppt présentation cr pour kit adhérent
OTPornichet
 

Andere mochten auch (20)

Unucr bilan20122013 pour diffusion
Unucr bilan20122013 pour diffusionUnucr bilan20122013 pour diffusion
Unucr bilan20122013 pour diffusion
 
Una aproximación a la vulneración de derechos en mujeres trabajadoras sexuale...
Una aproximación a la vulneración de derechos en mujeres trabajadoras sexuale...Una aproximación a la vulneración de derechos en mujeres trabajadoras sexuale...
Una aproximación a la vulneración de derechos en mujeres trabajadoras sexuale...
 
Actividad 8.0
Actividad 8.0Actividad 8.0
Actividad 8.0
 
Un africain un arbre au Niger et partout en Afrique et dans le Monde.
Un africain un arbre au Niger et partout en Afrique et dans le Monde.Un africain un arbre au Niger et partout en Afrique et dans le Monde.
Un africain un arbre au Niger et partout en Afrique et dans le Monde.
 
Preparar pedidos
Preparar  pedidosPreparar  pedidos
Preparar pedidos
 
Le webdocumentaire
Le webdocumentaireLe webdocumentaire
Le webdocumentaire
 
El entorno de las políticas públicas
El entorno de las políticas públicasEl entorno de las políticas públicas
El entorno de las políticas públicas
 
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
 
Experiencia Conecta Joven Club d'Esplai Diversitat Lúdica
Experiencia Conecta Joven Club d'Esplai Diversitat LúdicaExperiencia Conecta Joven Club d'Esplai Diversitat Lúdica
Experiencia Conecta Joven Club d'Esplai Diversitat Lúdica
 
Manual para ingreso y configuración de usuario
Manual para ingreso y configuración de usuarioManual para ingreso y configuración de usuario
Manual para ingreso y configuración de usuario
 
InVactis Slideshare
InVactis SlideshareInVactis Slideshare
InVactis Slideshare
 
Les 58 ch-teaux_des_bords_de_loire
Les 58 ch-teaux_des_bords_de_loireLes 58 ch-teaux_des_bords_de_loire
Les 58 ch-teaux_des_bords_de_loire
 
Brochure JSI Groupe
Brochure JSI GroupeBrochure JSI Groupe
Brochure JSI Groupe
 
Revolution dans-deux-pays-arabes
Revolution dans-deux-pays-arabesRevolution dans-deux-pays-arabes
Revolution dans-deux-pays-arabes
 
Focus sur le ROCARE
Focus sur le ROCAREFocus sur le ROCARE
Focus sur le ROCARE
 
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
 
La mode
La modeLa mode
La mode
 
Cuento motivador
Cuento motivador Cuento motivador
Cuento motivador
 
Ppt présentation cr pour kit adhérent
Ppt présentation cr pour kit adhérentPpt présentation cr pour kit adhérent
Ppt présentation cr pour kit adhérent
 
Mb vu par_konk_mariel
Mb vu par_konk_marielMb vu par_konk_mariel
Mb vu par_konk_mariel
 

Ähnlich wie Talk performance web

Techniques accélération des pages web #kiwiparty
Techniques accélération des pages web #kiwipartyTechniques accélération des pages web #kiwiparty
Techniques accélération des pages web #kiwiparty
Jean-Pierre Vincent
 
Kiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internetKiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internet
Devclic
 

Ähnlich wie Talk performance web (20)

Techniques accélération des pages web #kiwiparty
Techniques accélération des pages web #kiwipartyTechniques accélération des pages web #kiwiparty
Techniques accélération des pages web #kiwiparty
 
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"
 
LeParisien.fr - Didier Cros - Retours d'expérience - Soirée webperf Paris du ...
LeParisien.fr - Didier Cros - Retours d'expérience - Soirée webperf Paris du ...LeParisien.fr - Didier Cros - Retours d'expérience - Soirée webperf Paris du ...
LeParisien.fr - Didier Cros - Retours d'expérience - Soirée webperf Paris du ...
 
Améliorer les performances de vos sites web une priorité pour 2018 - Petit dé...
Améliorer les performances de vos sites web une priorité pour 2018 - Petit dé...Améliorer les performances de vos sites web une priorité pour 2018 - Petit dé...
Améliorer les performances de vos sites web une priorité pour 2018 - Petit dé...
 
Track 1 - Atelier 2 - Distribution complète d’un site avec le cdn Amazon Clo...
Track 1 - Atelier 2 - Distribution complète d’un site avec le cdn Amazon Clo...Track 1 - Atelier 2 - Distribution complète d’un site avec le cdn Amazon Clo...
Track 1 - Atelier 2 - Distribution complète d’un site avec le cdn Amazon Clo...
 
Responsive WebDesign performant
Responsive WebDesign performantResponsive WebDesign performant
Responsive WebDesign performant
 
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
 
Webperf Front-End SeoCampus 2012
Webperf Front-End SeoCampus 2012Webperf Front-End SeoCampus 2012
Webperf Front-End SeoCampus 2012
 
Drupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances DrupalDrupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances Drupal
 
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
 
Initiation Webperf : Comprendre, analyser et optimiser les performances web F...
Initiation Webperf : Comprendre, analyser et optimiser les performances web F...Initiation Webperf : Comprendre, analyser et optimiser les performances web F...
Initiation Webperf : Comprendre, analyser et optimiser les performances web F...
 
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifié
 
Conférence AFUP 20minutes.Fr
Conférence AFUP 20minutes.FrConférence AFUP 20minutes.Fr
Conférence AFUP 20minutes.Fr
 
LoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé AlbertonLoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé Alberton
 
We❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOWe❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEO
 
HTTP2 : ce qui va changer par Julien Landuré
HTTP2 : ce qui va changer par Julien LanduréHTTP2 : ce qui va changer par Julien Landuré
HTTP2 : ce qui va changer par Julien Landuré
 
Performances
PerformancesPerformances
Performances
 
Optimisation des performances d'un site web
Optimisation des performances d'un site webOptimisation des performances d'un site web
Optimisation des performances d'un site web
 
Kiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internetKiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internet
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 

Talk performance web

  • 1. + Performance WEB Mettez vos sites sur orbite
  • 2. + Emmanuel QUENTIN Architecte logiciel – Nurun Développeur certifié PHP & Magento @HereIComeSlowly
  • 3. + Running faster
  • 4. + Pourquoi ?  Taux de conversion  Un acheteur n’aime pas attendre  Amazon : Perte d’1% du C.A. toutes les 100ms  2/5 visiteurs abandonnent leur panier si chargement > 3s  Référencement  Pris en compte par Google (officiel)  30% de poids en moins : 30% de trafic en plus  Augmentation de la note affectée à AdWords
  • 5. + Pourquoi ?  Taux de rebond  500ms de chargement : 20% de recherche en moins chez Google  Economie de bande passante  Montée en charge facilitée
  • 6. + Waterfall Début du rendu, fin de la page blanche
  • 7. + Waterfall  Le frontend et le réseau représentent 90% du boulot  Le téléchargement dépend de  Recherche DNS (~20/100ms)  Connexion TCP  Téléchargement du contenu  Le Javascript bloque les autres téléchargements (le relou)  Les navigateurs limitent les téléchargements en parallèle par domaine (les relous)
  • 8. + Les solutions côté frontend !  DNS prefetching  <link rel="dns-prefetch" href="//assets.foo.com"> # Sauf IE < 10  Déporter l’inclusion des Javascripts à la fin du <body>  Rendre asynchrone le chargement des plugins sociaux  Mettre en place des domaines spécifiques (ou CDN) pour augmenter le chargement en parallèle
  • 9. + Les solutions côté frontend !  Diminuer le temps de chargement et le nombre de requêtes HTTP  Concatener et minifier les JS/CSS  Utiliser les sprites pour les images  Outil d’optimisation d’image (Pngcrush)  CDN géolocalisé (réduit la latence)
  • 10. + Réduire le reflow  Quand ?  Redimensionnement fenêtre  Changement taille police  Changement contenu  Pseudo classe ( :hover )  Changement de style en JS
  • 11. + Réduire le reflow  Comment ?  Diminuer la profondeur du DOM  Supprimer les règles CSS inutiles  Simplifier les règles CSS  Spécifier les dimensions des images
  • 12. + Autour du backend  Caching HTTP  Header Expires  Header ETag (entity tag)  Caching applicatif  Fichier, Memcache, Redis  Cache d’opcode (PHP) : APC, Zend Optimiser (surement dans PHP 5.5)  Reverse Proxy  Varnish, Nginx, Squid
  • 13. + Autour du backend  Serveur WEB  Compression gzip (mod_deflate d’Apache)  Module d’expiration (mod_expire d’Apache)  Base de donnnées  Index  Optimisation des requêtes (EXPLAIN, Last_query_cost)  Table temporaire, dénormalisation
  • 14. + Autour du backend  Prévoir ses applications de façon scalables  Master/slave MySQL – NoSQL  Queue de message (AMQP) : RabbitMQ, ZeroMQ, ZendQueue  CRON  Appels I/O asynchrones (NodeJS)
  • 15. + Outils  Google page speed (module Chrome / Firefox)  Yslow (module Chrome / Firefox)  Web page test ( webpagetest.org )
  • 16. +