SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
Quoi de neuf dans la Performance Web ?
Ce qui marche
Ce qui ne marche pas
Ce qui marchouille…
Bonjour je suis
• Jean-pierre VINCENT
• Dans le Web depuis 2000
• Dans la perf depuis 2005
• Startups, Yahoo!, grosses boites FR …
• Indépendant : expert JS et perfs
• Formateur, prof, auteur
• Viens jouer : @theystolemynick
braincracking.org
LE CHAMP DE BATAILLE
À quoi ça ressemble le front papa ?
Le monde est devenu merveilleux
Depuis 2005 :
• La fibre, la 4G !
• Des navigateurs qui
boostent !
• HTML5
• De nouveaux protocoles !
Le monde est devenu merveilleux
• Explosion du CSS3
• Flat Design
• Sites dédiés mobiles
Ce qui n’a pas changé
• L’être humain
– Need For Speed
• La vitesse de la lumière
– Fibre : débit X 10 mais chargement - 20% …
• La transmission radio
– Mobile = latence = pas si rapide
Ce qui n’a pas changé
• L’ADSL
• IE 8 (ou pire malheureux)
Ce qui a empiré
• Les attentes des utilisateurs :
– Si mon petit téléphone est fluide, pourquoi pas ton
site sur mon gros PC ?
• Google lit le JS
– Ce qui veut dire que la perf front va influencer le
taux de crawl
Ce qui a empiré
• Ton département
marketing :
– Tags
– Publicités
– Widgets
– AB Testing
en MASSE
Ce qui a empiré
• Le poids des sites
– +130% de poids en 3 ans !
– +56% sur les dédiés
mobile !
• Les nouvelles
fonctionnalités
– Font, grosses images,
HTTPS
• Le RWD
– Retina© + IE6 + 5
breakpoints
L’ARSENAL
Ce qui ne marche plus
Oublies :
• Le domain sharding
• JS en bas de page
Ce qui marchera (ou pas)
• SPDY / HTTP2
– 30% de gain selon les
organisateurs …
– 0% selon la police
• Images responsives, specs :
– ”srcset”, “src-N“, <picture>, client-
hints …
– ou pas
• CSS “will-change“
• Format d’image WebP
Les nouveaux trucs qui marchent
• Fonts asynchrones
• DOM Storage, offline
• Exécution non bloquante
de JavaScript
– Web Workers, RaF
– setTimeout (fn, 0)
Ce qui marchouille
• domaine des statiques
séparé
– des fois oui
– des fois non
• JS Asynchrone
• CDN
Ce qui marchouille
• Contenu dans le HTML :
– CSS, JS, images => google.fr
• CSS3
– Moins d’images
– Ça peut ramer
• JPG progressif
– Partout sauf IE8 / iOS
CE QUI MARCHERA TOUJOURS
Ce qui marchera toujours
• Configure ton serveur
bon sang :
– Keep-alive
– Gzip (lvl 9)
– Minifie
(Et offre toi de quoi surveiller tes admins)
Ce qui marchera toujours
• Gère ton cache !
– Savoir le créer
– Savoir l’invalider
• Le super cache : l’offline
Ce qui marchera toujours
• Asynchrone sur :
– Pubs
– Widgets
– Trackers
– Images non-visibles
• Grouper :
– JS et CSS en 2 X 2 fichiers
– Sprites, fonts iconiques
La morale de cette histoire
• Fais ta veille
• Teste (en Dev)
• Re-teste (en Prod)
• Surveille
(Et appelle moi, j’ai un paquet d’idées rentables)
(au pire je te forme)
Questions
?
Jean-pierre VINCENT
• Consultant indépendant
– Applications Web (HTML5 / JS)
– Performances !
• Formateur
– JavaScript
– Performances
• Veilleur : @theystolemynick
braincracking.org
J’ai quasi-volé ces photos à :
• Blurb Code
• Marcela Palma
• AlsaCréationS
• Alex Proimos
• JD Hancock
• Ant Baena
• Kit
• Honza Soukup
• Nicu Buculei
• Earl

Contenu connexe

Tendances

La vitesse d’un site web : un levier de croissance peu exploité
La vitesse d’un site web : un levier de croissance peu exploitéLa vitesse d’un site web : un levier de croissance peu exploité
La vitesse d’un site web : un levier de croissance peu exploitéFasterize
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoosejeromegn
 
Mesurer la performance : onload, pages
Mesurer la performance : onload, pagesMesurer la performance : onload, pages
Mesurer la performance : onload, pagesJean-Pierre Vincent
 
Single Page Application: Enrichissez l'expérience utilisateur
Single Page Application: Enrichissez l'expérience utilisateurSingle Page Application: Enrichissez l'expérience utilisateur
Single Page Application: Enrichissez l'expérience utilisateurflorentpellet
 
Atelier WordPress - Freelance fair tour - La cordée Rennes
Atelier WordPress - Freelance fair tour - La cordée RennesAtelier WordPress - Freelance fair tour - La cordée Rennes
Atelier WordPress - Freelance fair tour - La cordée Renneswpalex
 
Utilisation de node.js avec mongoDB
Utilisation de node.js avec mongoDBUtilisation de node.js avec mongoDB
Utilisation de node.js avec mongoDB13p
 
Meetup Webperf : résumé des 3 dernières années
Meetup Webperf : résumé des 3 dernières annéesMeetup Webperf : résumé des 3 dernières années
Meetup Webperf : résumé des 3 dernières annéesJean-Pierre Vincent
 
Créer son site web avec WordPress
Créer son site web avec WordPressCréer son site web avec WordPress
Créer son site web avec WordPressAbel LIFAEFI MBULA
 
Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Francois Daoust
 
Utiliser pleinement le navigateur et les nouveaux clients web - AFUP 2007
Utiliser pleinement le navigateur et les nouveaux clients web  - AFUP 2007Utiliser pleinement le navigateur et les nouveaux clients web  - AFUP 2007
Utiliser pleinement le navigateur et les nouveaux clients web - AFUP 2007Eric D.
 
Bien qu'en ligne votre site web n'est probablement pas en production
Bien qu'en ligne votre site web n'est probablement pas en productionBien qu'en ligne votre site web n'est probablement pas en production
Bien qu'en ligne votre site web n'est probablement pas en productionMarc Boivin
 
Créer et gérer un site internet seul c'est possible
Créer et gérer un site internet seul c'est possibleCréer et gérer un site internet seul c'est possible
Créer et gérer un site internet seul c'est possibleYoucef Kébaïli
 
Introduction à la soirée webperf du 21 juillet 2010, Paris
Introduction à la soirée webperf du 21 juillet 2010, ParisIntroduction à la soirée webperf du 21 juillet 2010, Paris
Introduction à la soirée webperf du 21 juillet 2010, ParisEric D.
 
Introduction à Rails - Paris on Rails 2006
Introduction à Rails - Paris on Rails 2006Introduction à Rails - Paris on Rails 2006
Introduction à Rails - Paris on Rails 2006Eric D.
 
64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPressAurélien Denis
 
Cloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesCloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesMicrosoft
 
Améliorer la rapidité de son site web
Améliorer la rapidité de son site webAméliorer la rapidité de son site web
Améliorer la rapidité de son site webEmmanuel Gautier
 
Drupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances DrupalDrupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances DrupalSkilld
 
Le meilleur pour votre site WordPress
Le meilleur pour votre site WordPressLe meilleur pour votre site WordPress
Le meilleur pour votre site WordPressAurélien Denis
 
Optimiser WordPress
Optimiser WordPressOptimiser WordPress
Optimiser WordPressChi Nacim
 

Tendances (20)

La vitesse d’un site web : un levier de croissance peu exploité
La vitesse d’un site web : un levier de croissance peu exploitéLa vitesse d’un site web : un levier de croissance peu exploité
La vitesse d’un site web : un levier de croissance peu exploité
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoose
 
Mesurer la performance : onload, pages
Mesurer la performance : onload, pagesMesurer la performance : onload, pages
Mesurer la performance : onload, pages
 
Single Page Application: Enrichissez l'expérience utilisateur
Single Page Application: Enrichissez l'expérience utilisateurSingle Page Application: Enrichissez l'expérience utilisateur
Single Page Application: Enrichissez l'expérience utilisateur
 
Atelier WordPress - Freelance fair tour - La cordée Rennes
Atelier WordPress - Freelance fair tour - La cordée RennesAtelier WordPress - Freelance fair tour - La cordée Rennes
Atelier WordPress - Freelance fair tour - La cordée Rennes
 
Utilisation de node.js avec mongoDB
Utilisation de node.js avec mongoDBUtilisation de node.js avec mongoDB
Utilisation de node.js avec mongoDB
 
Meetup Webperf : résumé des 3 dernières années
Meetup Webperf : résumé des 3 dernières annéesMeetup Webperf : résumé des 3 dernières années
Meetup Webperf : résumé des 3 dernières années
 
Créer son site web avec WordPress
Créer son site web avec WordPressCréer son site web avec WordPress
Créer son site web avec WordPress
 
Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?
 
Utiliser pleinement le navigateur et les nouveaux clients web - AFUP 2007
Utiliser pleinement le navigateur et les nouveaux clients web  - AFUP 2007Utiliser pleinement le navigateur et les nouveaux clients web  - AFUP 2007
Utiliser pleinement le navigateur et les nouveaux clients web - AFUP 2007
 
Bien qu'en ligne votre site web n'est probablement pas en production
Bien qu'en ligne votre site web n'est probablement pas en productionBien qu'en ligne votre site web n'est probablement pas en production
Bien qu'en ligne votre site web n'est probablement pas en production
 
Créer et gérer un site internet seul c'est possible
Créer et gérer un site internet seul c'est possibleCréer et gérer un site internet seul c'est possible
Créer et gérer un site internet seul c'est possible
 
Introduction à la soirée webperf du 21 juillet 2010, Paris
Introduction à la soirée webperf du 21 juillet 2010, ParisIntroduction à la soirée webperf du 21 juillet 2010, Paris
Introduction à la soirée webperf du 21 juillet 2010, Paris
 
Introduction à Rails - Paris on Rails 2006
Introduction à Rails - Paris on Rails 2006Introduction à Rails - Paris on Rails 2006
Introduction à Rails - Paris on Rails 2006
 
64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress
 
Cloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiquesCloud Azure – Services de données et bonnes pratiques
Cloud Azure – Services de données et bonnes pratiques
 
Améliorer la rapidité de son site web
Améliorer la rapidité de son site webAméliorer la rapidité de son site web
Améliorer la rapidité de son site web
 
Drupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances DrupalDrupagora 2012 Optimisation performances Drupal
Drupagora 2012 Optimisation performances Drupal
 
Le meilleur pour votre site WordPress
Le meilleur pour votre site WordPressLe meilleur pour votre site WordPress
Le meilleur pour votre site WordPress
 
Optimiser WordPress
Optimiser WordPressOptimiser WordPress
Optimiser WordPress
 

En vedette

Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013
Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013
Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013Patrick Lauke
 
Un peu de sécurité dans ce monde de Kiwi
Un peu de sécurité dans ce monde de KiwiUn peu de sécurité dans ce monde de Kiwi
Un peu de sécurité dans ce monde de KiwiLaurie-Anne Bourdain
 
BEM, vos CSS sous vitamines !
BEM, vos CSS sous vitamines !BEM, vos CSS sous vitamines !
BEM, vos CSS sous vitamines !Thomas ZILLIOX
 
Domain Modeling in a Functional World
Domain Modeling in a Functional WorldDomain Modeling in a Functional World
Domain Modeling in a Functional WorldDebasish Ghosh
 
Functional Programming in JavaScript by Luis Atencio
Functional Programming in JavaScript by Luis AtencioFunctional Programming in JavaScript by Luis Atencio
Functional Programming in JavaScript by Luis AtencioLuis Atencio
 
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...Chris Richardson
 
Who's More Functional: Kotlin, Groovy, Scala, or Java?
Who's More Functional: Kotlin, Groovy, Scala, or Java?Who's More Functional: Kotlin, Groovy, Scala, or Java?
Who's More Functional: Kotlin, Groovy, Scala, or Java?Andrey Breslav
 
Introduction to Functional Programming in JavaScript
Introduction to Functional Programming in JavaScriptIntroduction to Functional Programming in JavaScript
Introduction to Functional Programming in JavaScripttmont
 
"Немного о функциональном программирование в JavaScript" Алексей Коваленко
"Немного о функциональном программирование в JavaScript" Алексей Коваленко"Немного о функциональном программирование в JavaScript" Алексей Коваленко
"Немного о функциональном программирование в JavaScript" Алексей КоваленкоFwdays
 
Pushing Python: Building a High Throughput, Low Latency System
Pushing Python: Building a High Throughput, Low Latency SystemPushing Python: Building a High Throughput, Low Latency System
Pushing Python: Building a High Throughput, Low Latency SystemKevin Ballard
 
Category theory for beginners
Category theory for beginnersCategory theory for beginners
Category theory for beginnerskenbot
 
Functional Programming Patterns (BuildStuff '14)
Functional Programming Patterns (BuildStuff '14)Functional Programming Patterns (BuildStuff '14)
Functional Programming Patterns (BuildStuff '14)Scott Wlaschin
 
Patchwork UTF-8 : portabilité unicode et graphèmes clusters
Patchwork UTF-8 : portabilité unicode et graphèmes clustersPatchwork UTF-8 : portabilité unicode et graphèmes clusters
Patchwork UTF-8 : portabilité unicode et graphèmes clustersnicolas.grekas
 
jQuery sans jQuery
jQuery sans jQueryjQuery sans jQuery
jQuery sans jQuerygoldoraf
 
HTML5 mobile avec Sencha Touch [FR]
HTML5 mobile avec Sencha Touch [FR]HTML5 mobile avec Sencha Touch [FR]
HTML5 mobile avec Sencha Touch [FR]Wixiweb
 
Webperformance #rouendayvous
Webperformance #rouendayvousWebperformance #rouendayvous
Webperformance #rouendayvousOlivier MARTINEAU
 
Breizhcamp 2014 : Une partie de Cache-Cache
Breizhcamp 2014 : Une partie de Cache-CacheBreizhcamp 2014 : Une partie de Cache-Cache
Breizhcamp 2014 : Une partie de Cache-CacheFrederic Bouchery
 
Le Profiling d'applications PHP - Blackfire.io
Le Profiling d'applications PHP - Blackfire.ioLe Profiling d'applications PHP - Blackfire.io
Le Profiling d'applications PHP - Blackfire.ionicolas.grekas
 
PHP Tour 2012 - Conférence FuelPHP
PHP Tour 2012 - Conférence FuelPHPPHP Tour 2012 - Conférence FuelPHP
PHP Tour 2012 - Conférence FuelPHPNovius OS
 
Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012David Pilato
 

En vedette (20)

Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013
Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013
Getting touchy - an introduction to touch events / Sud Web / Avignon 17.05.2013
 
Un peu de sécurité dans ce monde de Kiwi
Un peu de sécurité dans ce monde de KiwiUn peu de sécurité dans ce monde de Kiwi
Un peu de sécurité dans ce monde de Kiwi
 
BEM, vos CSS sous vitamines !
BEM, vos CSS sous vitamines !BEM, vos CSS sous vitamines !
BEM, vos CSS sous vitamines !
 
Domain Modeling in a Functional World
Domain Modeling in a Functional WorldDomain Modeling in a Functional World
Domain Modeling in a Functional World
 
Functional Programming in JavaScript by Luis Atencio
Functional Programming in JavaScript by Luis AtencioFunctional Programming in JavaScript by Luis Atencio
Functional Programming in JavaScript by Luis Atencio
 
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...
Map, Flatmap and Reduce are Your New Best Friends: Simpler Collections, Concu...
 
Who's More Functional: Kotlin, Groovy, Scala, or Java?
Who's More Functional: Kotlin, Groovy, Scala, or Java?Who's More Functional: Kotlin, Groovy, Scala, or Java?
Who's More Functional: Kotlin, Groovy, Scala, or Java?
 
Introduction to Functional Programming in JavaScript
Introduction to Functional Programming in JavaScriptIntroduction to Functional Programming in JavaScript
Introduction to Functional Programming in JavaScript
 
"Немного о функциональном программирование в JavaScript" Алексей Коваленко
"Немного о функциональном программирование в JavaScript" Алексей Коваленко"Немного о функциональном программирование в JavaScript" Алексей Коваленко
"Немного о функциональном программирование в JavaScript" Алексей Коваленко
 
Pushing Python: Building a High Throughput, Low Latency System
Pushing Python: Building a High Throughput, Low Latency SystemPushing Python: Building a High Throughput, Low Latency System
Pushing Python: Building a High Throughput, Low Latency System
 
Category theory for beginners
Category theory for beginnersCategory theory for beginners
Category theory for beginners
 
Functional Programming Patterns (BuildStuff '14)
Functional Programming Patterns (BuildStuff '14)Functional Programming Patterns (BuildStuff '14)
Functional Programming Patterns (BuildStuff '14)
 
Patchwork UTF-8 : portabilité unicode et graphèmes clusters
Patchwork UTF-8 : portabilité unicode et graphèmes clustersPatchwork UTF-8 : portabilité unicode et graphèmes clusters
Patchwork UTF-8 : portabilité unicode et graphèmes clusters
 
jQuery sans jQuery
jQuery sans jQueryjQuery sans jQuery
jQuery sans jQuery
 
HTML5 mobile avec Sencha Touch [FR]
HTML5 mobile avec Sencha Touch [FR]HTML5 mobile avec Sencha Touch [FR]
HTML5 mobile avec Sencha Touch [FR]
 
Webperformance #rouendayvous
Webperformance #rouendayvousWebperformance #rouendayvous
Webperformance #rouendayvous
 
Breizhcamp 2014 : Une partie de Cache-Cache
Breizhcamp 2014 : Une partie de Cache-CacheBreizhcamp 2014 : Une partie de Cache-Cache
Breizhcamp 2014 : Une partie de Cache-Cache
 
Le Profiling d'applications PHP - Blackfire.io
Le Profiling d'applications PHP - Blackfire.ioLe Profiling d'applications PHP - Blackfire.io
Le Profiling d'applications PHP - Blackfire.io
 
PHP Tour 2012 - Conférence FuelPHP
PHP Tour 2012 - Conférence FuelPHPPHP Tour 2012 - Conférence FuelPHP
PHP Tour 2012 - Conférence FuelPHP
 
Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012
 

Similaire à Performances web - quoi de neuf ?

Techniques d'accélération des pages web
Techniques d'accélération des pages webTechniques d'accélération des pages web
Techniques d'accélération des pages webJean-Pierre Vincent
 
Webperf et SEO : les Mythes et la Réalité
Webperf et SEO : les Mythes et la RéalitéWebperf et SEO : les Mythes et la Réalité
Webperf et SEO : les Mythes et la RéalitéFasterize
 
Webperf & SEO : les mythes et la réalité
Webperf & SEO : les mythes et la réalitéWebperf & SEO : les mythes et la réalité
Webperf & SEO : les mythes et la réalitéFasterize
 
Pourquoi la performance?
Pourquoi la performance?Pourquoi la performance?
Pourquoi la performance?Nicole Sullivan
 
Performance Web côté client - Daspet / Sullivan - Paris Web 2008
Performance Web côté client - Daspet / Sullivan - Paris Web 2008Performance Web côté client - Daspet / Sullivan - Paris Web 2008
Performance Web côté client - Daspet / Sullivan - Paris Web 2008Association Paris-Web
 
Retours sur le concours Webperf 2010
Retours sur le concours Webperf 2010Retours sur le concours Webperf 2010
Retours sur le concours Webperf 2010Jean-Pierre Vincent
 
Un site web rapide ?
Un site web rapide ? Un site web rapide ?
Un site web rapide ? haricot
 
Inclure du Javascript de manière performante
Inclure du Javascript de manière performanteInclure du Javascript de manière performante
Inclure du Javascript de manière performanteJean-Pierre Vincent
 
FinistJUG - J’ai besoin d’une appli web rapidement
FinistJUG -   J’ai besoin d’une appli web rapidementFinistJUG -   J’ai besoin d’une appli web rapidement
FinistJUG - J’ai besoin d’une appli web rapidementHoracio Gonzalez
 
Le suivi post référencement (SEO)
Le suivi post référencement (SEO)Le suivi post référencement (SEO)
Le suivi post référencement (SEO)Sandrine Bertrand
 
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifiéAdrien Russo
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptKhalid Jebbari
 
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 ?Fasterize
 
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échoué
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échouéLe Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échoué
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échouéPhilippe YONNET
 
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...Fasterize
 
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?Fasterize
 

Similaire à Performances web - quoi de neuf ? (20)

Techniques d'accélération des pages web
Techniques d'accélération des pages webTechniques d'accélération des pages web
Techniques d'accélération des pages web
 
Quoi de neuf dans la webperf ?
Quoi de neuf dans la webperf ?Quoi de neuf dans la webperf ?
Quoi de neuf dans la webperf ?
 
Les performances Web mobile
Les performances Web mobileLes performances Web mobile
Les performances Web mobile
 
Webperf et SEO : les Mythes et la Réalité
Webperf et SEO : les Mythes et la RéalitéWebperf et SEO : les Mythes et la Réalité
Webperf et SEO : les Mythes et la Réalité
 
Webperf & SEO : les mythes et la réalité
Webperf & SEO : les mythes et la réalitéWebperf & SEO : les mythes et la réalité
Webperf & SEO : les mythes et la réalité
 
Introduction à la webperf
Introduction à la webperfIntroduction à la webperf
Introduction à la webperf
 
Pourquoi la performance?
Pourquoi la performance?Pourquoi la performance?
Pourquoi la performance?
 
Performance Web côté client - Daspet / Sullivan - Paris Web 2008
Performance Web côté client - Daspet / Sullivan - Paris Web 2008Performance Web côté client - Daspet / Sullivan - Paris Web 2008
Performance Web côté client - Daspet / Sullivan - Paris Web 2008
 
Retours sur le concours Webperf 2010
Retours sur le concours Webperf 2010Retours sur le concours Webperf 2010
Retours sur le concours Webperf 2010
 
Un site web rapide ?
Un site web rapide ? Un site web rapide ?
Un site web rapide ?
 
Inclure du Javascript de manière performante
Inclure du Javascript de manière performanteInclure du Javascript de manière performante
Inclure du Javascript de manière performante
 
FinistJUG - J’ai besoin d’une appli web rapidement
FinistJUG -   J’ai besoin d’une appli web rapidementFinistJUG -   J’ai besoin d’une appli web rapidement
FinistJUG - J’ai besoin d’une appli web rapidement
 
Le suivi post référencement (SEO)
Le suivi post référencement (SEO)Le suivi post référencement (SEO)
Le suivi post référencement (SEO)
 
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifié
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
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 ?
 
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échoué
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échouéLe Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échoué
Le Edge SEO : comment faire du SEO dans le Cloud quand tout le reste a échoué
 
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...
Edge SEO & Cloud SEO : Comment faire du SEO dans le cloud quand tout le reste...
 
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?
Webperf et SEO : quelles métriques suivre ? Quelles optimisations privilégier ?
 
REX : la webperf chez RueDuCommerce
REX : la webperf chez RueDuCommerceREX : la webperf chez RueDuCommerce
REX : la webperf chez RueDuCommerce
 

Plus de Jean-Pierre Vincent

Les Performance de rendu sur mobile
Les Performance de rendu sur mobileLes Performance de rendu sur mobile
Les Performance de rendu sur mobileJean-Pierre Vincent
 
Accélération des pages Web : les bases en exemple
Accélération des pages Web : les bases en exempleAccélération des pages Web : les bases en exemple
Accélération des pages Web : les bases en exempleJean-Pierre Vincent
 
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 #kiwipartyJean-Pierre Vincent
 
Le monitoring de la performance front
Le monitoring de la performance frontLe monitoring de la performance front
Le monitoring de la performance frontJean-Pierre Vincent
 
Function oop - bonnes pratiques ms tech days
Function   oop - bonnes pratiques ms tech daysFunction   oop - bonnes pratiques ms tech days
Function oop - bonnes pratiques ms tech daysJean-Pierre Vincent
 
Fondamentaux portée - contexte - function ms tech days
Fondamentaux   portée - contexte - function ms tech daysFondamentaux   portée - contexte - function ms tech days
Fondamentaux portée - contexte - function ms tech daysJean-Pierre Vincent
 
Javascript : fondamentaux et OOP
Javascript : fondamentaux et OOPJavascript : fondamentaux et OOP
Javascript : fondamentaux et OOPJean-Pierre Vincent
 
Télés connectées et développement Web
Télés connectées et développement WebTélés connectées et développement Web
Télés connectées et développement WebJean-Pierre Vincent
 
HTML5 maintenant partie 3 : multimedia
HTML5 maintenant partie 3 : multimediaHTML5 maintenant partie 3 : multimedia
HTML5 maintenant partie 3 : multimediaJean-Pierre Vincent
 
HTML5 maintenant partie 2 : APIs
HTML5 maintenant partie 2 : APIsHTML5 maintenant partie 2 : APIs
HTML5 maintenant partie 2 : APIsJean-Pierre Vincent
 
HTML5 maintenant partie 1 : la sémantique
HTML5 maintenant partie 1 : la sémantiqueHTML5 maintenant partie 1 : la sémantique
HTML5 maintenant partie 1 : la sémantiqueJean-Pierre Vincent
 

Plus de Jean-Pierre Vincent (13)

Les Performance de rendu sur mobile
Les Performance de rendu sur mobileLes Performance de rendu sur mobile
Les Performance de rendu sur mobile
 
Accélération des pages Web : les bases en exemple
Accélération des pages Web : les bases en exempleAccélération des pages Web : les bases en exemple
Accélération des pages Web : les bases en exemple
 
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
 
Le monitoring de la performance front
Le monitoring de la performance frontLe monitoring de la performance front
Le monitoring de la performance front
 
Function oop - bonnes pratiques ms tech days
Function   oop - bonnes pratiques ms tech daysFunction   oop - bonnes pratiques ms tech days
Function oop - bonnes pratiques ms tech days
 
Fondamentaux portée - contexte - function ms tech days
Fondamentaux   portée - contexte - function ms tech daysFondamentaux   portée - contexte - function ms tech days
Fondamentaux portée - contexte - function ms tech days
 
Javascript : fondamentaux et OOP
Javascript : fondamentaux et OOPJavascript : fondamentaux et OOP
Javascript : fondamentaux et OOP
 
Télés connectées et développement Web
Télés connectées et développement WebTélés connectées et développement Web
Télés connectées et développement Web
 
Html5 bonnes-pratiques
Html5 bonnes-pratiquesHtml5 bonnes-pratiques
Html5 bonnes-pratiques
 
HTML5 maintenant partie 3 : multimedia
HTML5 maintenant partie 3 : multimediaHTML5 maintenant partie 3 : multimedia
HTML5 maintenant partie 3 : multimedia
 
HTML5 maintenant partie 2 : APIs
HTML5 maintenant partie 2 : APIsHTML5 maintenant partie 2 : APIs
HTML5 maintenant partie 2 : APIs
 
HTML5 maintenant partie 1 : la sémantique
HTML5 maintenant partie 1 : la sémantiqueHTML5 maintenant partie 1 : la sémantique
HTML5 maintenant partie 1 : la sémantique
 
Html5 now light
Html5 now lightHtml5 now light
Html5 now light
 

Performances web - quoi de neuf ?

  • 1. Quoi de neuf dans la Performance Web ? Ce qui marche Ce qui ne marche pas Ce qui marchouille…
  • 2. Bonjour je suis • Jean-pierre VINCENT • Dans le Web depuis 2000 • Dans la perf depuis 2005 • Startups, Yahoo!, grosses boites FR … • Indépendant : expert JS et perfs • Formateur, prof, auteur • Viens jouer : @theystolemynick braincracking.org
  • 3. LE CHAMP DE BATAILLE À quoi ça ressemble le front papa ?
  • 4. Le monde est devenu merveilleux Depuis 2005 : • La fibre, la 4G ! • Des navigateurs qui boostent ! • HTML5 • De nouveaux protocoles !
  • 5. Le monde est devenu merveilleux • Explosion du CSS3 • Flat Design • Sites dédiés mobiles
  • 6. Ce qui n’a pas changé • L’être humain – Need For Speed • La vitesse de la lumière – Fibre : débit X 10 mais chargement - 20% … • La transmission radio – Mobile = latence = pas si rapide
  • 7. Ce qui n’a pas changé • L’ADSL • IE 8 (ou pire malheureux)
  • 8. Ce qui a empiré • Les attentes des utilisateurs : – Si mon petit téléphone est fluide, pourquoi pas ton site sur mon gros PC ? • Google lit le JS – Ce qui veut dire que la perf front va influencer le taux de crawl
  • 9. Ce qui a empiré • Ton département marketing : – Tags – Publicités – Widgets – AB Testing en MASSE
  • 10. Ce qui a empiré • Le poids des sites – +130% de poids en 3 ans ! – +56% sur les dédiés mobile ! • Les nouvelles fonctionnalités – Font, grosses images, HTTPS • Le RWD – Retina© + IE6 + 5 breakpoints
  • 12. Ce qui ne marche plus Oublies : • Le domain sharding • JS en bas de page
  • 13. Ce qui marchera (ou pas) • SPDY / HTTP2 – 30% de gain selon les organisateurs … – 0% selon la police • Images responsives, specs : – ”srcset”, “src-N“, <picture>, client- hints … – ou pas • CSS “will-change“ • Format d’image WebP
  • 14. Les nouveaux trucs qui marchent • Fonts asynchrones • DOM Storage, offline • Exécution non bloquante de JavaScript – Web Workers, RaF – setTimeout (fn, 0)
  • 15. Ce qui marchouille • domaine des statiques séparé – des fois oui – des fois non • JS Asynchrone • CDN
  • 16. Ce qui marchouille • Contenu dans le HTML : – CSS, JS, images => google.fr • CSS3 – Moins d’images – Ça peut ramer • JPG progressif – Partout sauf IE8 / iOS
  • 17. CE QUI MARCHERA TOUJOURS
  • 18. Ce qui marchera toujours • Configure ton serveur bon sang : – Keep-alive – Gzip (lvl 9) – Minifie (Et offre toi de quoi surveiller tes admins)
  • 19. Ce qui marchera toujours • Gère ton cache ! – Savoir le créer – Savoir l’invalider • Le super cache : l’offline
  • 20. Ce qui marchera toujours • Asynchrone sur : – Pubs – Widgets – Trackers – Images non-visibles • Grouper : – JS et CSS en 2 X 2 fichiers – Sprites, fonts iconiques
  • 21. La morale de cette histoire • Fais ta veille • Teste (en Dev) • Re-teste (en Prod) • Surveille (Et appelle moi, j’ai un paquet d’idées rentables) (au pire je te forme)
  • 23. Jean-pierre VINCENT • Consultant indépendant – Applications Web (HTML5 / JS) – Performances ! • Formateur – JavaScript – Performances • Veilleur : @theystolemynick braincracking.org
  • 24. J’ai quasi-volé ces photos à : • Blurb Code • Marcela Palma • AlsaCréationS • Alex Proimos • JD Hancock • Ant Baena • Kit • Honza Soukup • Nicu Buculei • Earl

Notes de l'éditeur

  1. Fibre : 50Mb/s , 4G : 20-30 Mb/s. Même la 3G est passée récemment à 6Mb/s, + rapide que l’ADSL moteur JS IE 9 10x plus rapide que IE 8, lui même 5x plus rapide que IE 7 accès GPU, compilos optimisés
  2. Moins d’images à la con Sites plus légers
  3. Humain : La vitesse reste une exigence 4G : 50-100ms au mieux, 3G : on ne compte plus
  4. France : 6,5Mb de MOYENNE => viser les 3 Mb pour être serein Fibre : 10% de la population couverte 4G : des fois. La saturation arrivera IE8 : 20%
  5. Jusqu’ici, seules les perfs serveur influençaient le taux de crawl
  6. AB Testing retarde VOLONTAIREMENT l’affichage Bouton Google ou facebook : 150-200K chacun, un max de JS
  7. Parce que IE7 c’est fini Parce que mobile = peu de bande passante, HTTP pipelining : une ressource peut ralentir les autres Par défaut dans Ruby par ex. JS bas de page : ralentit les mobiles et le temps d’accès à la fonctionnalité
  8. SPDY (HTTP2) -30% selon les organisateurs, 0% selon la police WebP : dans Chrome, déployé par Facebook, 30% meilleure que JPG
  9. FONT : Ça bloque, mais pas partout pareil Le moins possible Option asynchrone Storage : stocker liste de pays, remplacer les cookies, stockage CSS / image
  10. Grands gagnants : requireJS ou LabJS
  11. 1 seule requête pour le premier contenu visible Le reste en asynchrone
  12. Pas plus rapide qu’une requête HTTP non faite
  13. Lazy-load images