SlideShare une entreprise Scribd logo
High Performance Web
           Sites




Éric Daspet                                     Nicole Sullivan
Développeur web à Yahoo!                     nicolesl@yahoo-inc.com
http://eric.daspet.name/                       www.stubbornella.org
                           http://developer.yahoo.com/performance
Qui sommes-nous ?

• Éric Daspet
  Développeur web à Yahoo!


• Nicole Sullivan
  Équipe Exceptional Performance à Yahoo!
Quantifier et améliorer la
performance de tout produit
      Yahoo! mondial
you?

Recommandé pour vous

Responsive WebDesign performant
Responsive WebDesign performantResponsive WebDesign performant
Responsive WebDesign performant

Commentaires des slides accessibles depuis : http://refficience.com/wpo/queduweb-2016/ Présentation donnée lors de la conférence QueDuWeb le 8 juin 2016 à Deauville. Les bonnes pratiques permettant de réaliser un site mobile performant (optimisation de temps de chargement des pages) en utilisant les techniques du Responsive Web Design - présenté par Thomas SOUDAZ de la société Refficience booster de speedindex !

temps de chargementmobilequeduweb
Référencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO CampRéférencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO Camp

Présentation lors de la Joomla Day 2010 par Philippe Yonnet

joomlajoomla dayseo
Optimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressOptimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPress

Slides de la conférence SemRush du 05/11/2015 sur la thématique "Optimiser réellement le référencement naturel de WordPress". Conférence animée par Daniel Roch - Consultant WordPress et Référencement naturel chez SeoMix

seoréférencement naturelseomix
Pourquoi la
performance?
1: Rapide est mieux
7
Pourquoi la performance?

Recommandé pour vous

Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?

Présentation de Philippe Yonnet durant l'événement en ligne SEMrush : 3 heures de SEO technique | 6 sessions consécutives

semrushsemrush francephilippe yonnet
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...

Dans cette conférence, nous allons faire le point sur l’histoire de Baidu, les particularités du SEO chinois et la manière de référencer un site web sur les moteurs de recherche chinois. Baidu a été créé le 1er janvier 2000 par Eric Xu et Robin Li, deux ingénieurs informaticiens. Le moteur chinois le plus populaire dans l’Empire du Milieu a longtemps été considéré comme une copie de Google, surtout dans ses débuts. Mais depuis quelques années, avec les développements informatiques, Baidu a évolué vers le statut de « moteur de recherche créatif » … Baidu propose de nombreux services : les plus connus sont Baike (Wikipedia chinois), Zhidao (une sorte de Yahoo! Questions / Réponses), Wengou (le Google Shopping chinois), Tieba (un moteur de forums chinois qui comptent plus de 10 000 sous-forums comme les bbs, etc.). Baidu propose des services plus complets que ses concurrents comme HaoSou (anciennement 360), Sogou, etc. Et la concurrence est rude en Chine … pour en savoir plus sur les moteurs chinois, ne loupez pas ma conférence ! Vous y apprendrez quelques astuces de SEO chinois sans même à savoir parler le mandarin

seo baiduchinese seoréférencement chinois
La guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS DrupalLa guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS Drupal

WordPress et Drupal sont-ils des CMS optimisés pour le référencement naturel ? Lors du dernier SEOCampus de Paris, Simon Georges (Drupal) et Daniel Roch (WordPress) font leur retour d'expérience sur les lacunes quasi identiques de ces deux CMS pour le référencement naturel. http://paris.seo-campus.org/guerre-cms-drupal-vs-wordpress/

wordpressreferencement naturelcms
Pourquoi la performance?
10
11
12

Recommandé pour vous

Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?

Présentation de la conférence de patrick valibus au SEO camp paris 2020 sur le thème: "Comment réussir la migration de son site web à tous les coups ?" Accès au site de l'agence : https://www.410-gone.fr/seo.html Accès à notre outil de migration de sites : https://www.swan.tools/fr

seoréférencementseocamp
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

1ère partie de la présentation HTML5 maintenant : les nouvelles balises, microdata, les nouveaux formulaires, bref tout ce qui fait l'évolution de la sémantique de HTML4

html5forms2smantique
100 jours pour développer son trafic !
100 jours pour développer son trafic !100 jours pour développer son trafic !
100 jours pour développer son trafic !

L'histoire vraie d'un Acquisition Manager chez @reezocar

seoseocampgoogle
13
2: Les sites sont plus lourd
Les sites web modernes
& les application web ont
         changer
De 2003 à 2008:
   97K à 312K.
25.7 à 49.9 objects.

Recommandé pour vous

Introduction à la webperf
Introduction à la webperfIntroduction à la webperf
Introduction à la webperf

Comment accélérer ses pages Web ? Combien cela rapporte il, quels sont les outils Nous allons voir les techniques de base que les développeurs doivent connaître et quels sont les outils dont tout site moderne doit s'équiper pour assurer un minimum de qualité.

webperfmarseille
After YSlow "A"
After YSlow "A"After YSlow "A"
After YSlow "A"

The document discusses 20 additional best practices for improving web performance beyond the original 14 recommendations from YSlow. It covers techniques like flushing the buffer early, splitting components for post-loading, preloading necessary assets, reducing unnecessary DOM elements, optimizing images through techniques like converting to smaller file formats and using CSS sprites, and designing for mobile performance. The document provides examples and case studies to illustrate the recommendations and cites additional resources on web performance.

performanceyslowwebsite
What is Object Oriented CSS?
What is Object Oriented CSS?What is Object Oriented CSS?
What is Object Oriented CSS?

This document discusses object-oriented CSS (OOCSS) as an evolution of CSS that makes it more powerful. OOCSS involves creating reusable CSS objects rather than page-specific rules, setting good global defaults, abstracting reusable elements, separating container and content, and using multiple classes to simulate inheritance. This allows for more scalable, maintainable and performant CSS code. Some best practices of OOCSS include creating semantic object classes like .heading rather than styling specific elements directly. The document provides examples of OOCSS principles and their benefits.

performancef2ecss
Les derniers 12 mois, le top1000 sites:
         De 250K à 310.4K.
 WebSiteOptimization.com/speed/tweak/average-web-page
TF1                  5s
AlloCiné             4s
FaceBook             4,6s
Skyrock              3,7s
France Telecom       10,1s!
Free (portail)       4,4s
Le Monde             7,9s
Amazon France        3,7s
Google (résultats)   0,24s
Yahoo! France        1,8s
Daily Motion         2,4s
3: L’utilisateur veut un site
            rapide
Quel est le problème ?

• 6 sur 11 ont un chargement > 4s

• Abandons, agacement,
• Impacte votre business

Recommandé pour vous

CSS Bloat!
CSS Bloat!CSS Bloat!
CSS Bloat!

Your website has out-of-control CSS bloat. You know your performance is being impacted, but how do you move from organic CSS with no particular architecture to something lighter, more logical, and easier to maintain? In this session, Nicole Sullivan and Stoyan Stefanov will show you how they improved the CSS at Facebook and Yahoo! Search. After this session you will know how to: 1. Use lint tools to automate and evaluate the efficiency of your CSS 2. Avoid the top 5 causes of CSS bloat, and 3. Speed up your site by making the UI code an order of magnitude smaller.

open web camp iicssoptimization
Building the Media Block in ReactJS
Building the Media Block in ReactJS Building the Media Block in ReactJS
Building the Media Block in ReactJS

the API is an interface that needs to be designed. http://styleguide.pivotal.io/react_beta.html https://www.npmjs.com/search?q=pui

reactan event apartan event apart - san diego 2015
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools

Let’s admit it, the tools for writing CSS aren’t very advanced. For the most part, the people who write tools don’t know about CSS and the people who know about CSS don’t write tools. Quite a conundrum! In this session, you’ll learn about good tools that can make development faster and maintenance easier. We’ll also talk a bit about where we can go from here. What tools do we need as sites are becoming more and more complex? We need to get beyond tools whose primary goal is to avoid hand-coding and realize that, as our techniques for writing CSS become more powerful, our tools can too! Session will include: * Validators * Preprocessors * Finding dead rules * Linting * CSS3 gradient tools * Performance measurement tools * Unit testing

image optimizationcompassblueprint
+100 ms
Amazon: ventes -1%


     +100 ms
+400 ms
Yahoo!: abandons
    +5 à 9%

   +400 ms

Recommandé pour vous

The Fast And The Fabulous
The Fast And The FabulousThe Fast And The Fabulous
The Fast And The Fabulous

You've got a sneaking suspicion that design impacts performance. What next? Your engineers know nothing about design and your designers know nothing about performance. How can you get everyone on the same page? Which design flaws must you absolutely avoid? How do engineers slow designs with poor CSS? This presentation covers the best practices in design and OO CSS for fast, maintainable sites. * Abstraction * Flexibility * Grids * Location dependent styles Velocity Conference, 2009

Don't feed the trolls
Don't feed the trollsDon't feed the trolls
Don't feed the trolls

The JavaScript community is one of the most vibrant and fun groups I've ever been lucky enough to be a part of. Like any vibrant community, sometimes people don't play nicely. In this session, I will discuss what it has been like to be shy *and* be on twitter, mailing lists, and open source. I'll talk about my experiences consulting on massive CSS overhauls, and ways to defeat trolls -- including your own inner troll! I'll also share a timing attack for your brain that might just surprise you.

fluentconfjavascriptjsconf
Creating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve PerformanceCreating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve Performance

Refactoring Trulia’s UI with SASS, OOCSS, and handlebars. My slides from jsconf 2013. Lot's of yummy details about the performance improvements we were able to make.

sassoocssstyle guides
+500 ms
Google: recherches
      -20%

     +500 ms
-30% poids
Google: +30% trafic


   -30% poids

Recommandé pour vous

The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...

The cascade is a poker game, but we've been playing our cards all wrong. Here Nicole suggests we stop trying to play to win to prevent code bloat, and simplify the cascade, using the order of the rulesets to allow overrides.

taetae09css
Our Best Practices Are Killing Us
Our Best Practices Are Killing UsOur Best Practices Are Killing Us
Our Best Practices Are Killing Us

We keep thinking we can write better CSS if we just try harder, that the next site will be clean and stay that way. This presentation shows that in fact, messy CSS is the direct result of our worst best-practices. We need to reexamine those assumptions with an eye to practicality and scalability as well as accessibility, standards, and fabulous design.

web 20 expoweb designcss
Object Oriented CSS
Object Oriented CSSObject Oriented CSS
Object Oriented CSS

How do you scale CSS for millions of visitors or thousands of pages? The slides from Nicole's presentation at Web Directions North in Denver will show you how to use Object Oriented CSS to write fast, maintainable, standards-based front end code. Adds much needed predictability to CSS so that even beginners can participate in writing beautiful, standards-compliant, fast websites.

modulesblocksoriented
Qu’est-ce que la
 performance?
Deux Types:
 Temps de réponse
          &
Efficacité du systeme
Notre focus
  est sur la
  temps de
réponse des
produits web
Cueillir les fruits
de la performance
 (certains bas, certains hauts)

Recommandé pour vous

Cache
CacheCache
Cache

Cache

cachedataehcache
Taming CSS Selectors
Taming CSS SelectorsTaming CSS Selectors
Taming CSS Selectors

From Nicole's presentation at the CSS Summit. This is brand new research regarding efficient CSS selector design. Practicing the rules outlined here will make your CSS lean, your site fast, and your maintenance minimal. A beautiful combination for people concerned with building performance into their sites.

selectorscssperformance
CSS Wish List @JSConf
CSS Wish List @JSConfCSS Wish List @JSConf
CSS Wish List @JSConf

From Nicole's talk at JSConf.eu where she presented her wish list for the future of CSS. She presents a brand-new expanded syntax which allows for prototypes, mixins, and variables and explains how a preprocessor can be used today to achieve a richer language in older browsers.

css specification prototype mixin variable oocss j
Nos buts principaux

• Moins de requêtes HTTP
• Des composants moins lourds
• Paralléliser les requêtes
Bonnes pratiques
  http://developer.yahoo.com/performance
Mise à jour des 14 recommandations initiales
        20 recommandations ajoutées
14 bonnes pratiques (mises à jour)
Faire moins de requêtes HTTP
Utiliser un réseau de diffusion de contenu (CDN)
Ajouter des entêtes “Expires” (ou Cache-control)
Compresser les composants avec gzip
Mettre les CSS en haut
Déplacer les CSS en bas (en ligne aussi)
Éviter les “expression” en CSS
Externaliser CSS et Javascript
Réduire les requêtes DNS
Minimifier les Javascript et CSS (en ligne aussi)
Éviter les redirections
Retirer les scripts dupliqués
Configurer les ETags
Rendre Ajax cachable http://developer.yahoo.com/performance/rules.html
Après YSlow “A”?
1. Vider le tampon rapidement (buffer)           11. Minimiser les accès DOM

2. Utiliser GET pour Ajax                        12. Développer des gestionnaires d’événements
                                                     sympa
3. Post-charger les composants
                                                 13. Choisir <link> plutôt que @import
4. Pré-charger les composants
                                                 14. Éviter “filter”
5. Réduire le nombre d’éléments DOM
                                                 15. Optimiser les images
6. Séparer les composants sur plusieurs
   domaines                                      16. Optimiser les sprites CSS

7. Réduire le nombre d’iframe                    17. Ne redimensionnez pas les images en HTML

8. Pas de 404                                    18. Rendez favicon.ico léger et cachable

9. Réduire la taille des cookies                 19. Nouveauté iPhone 3G

10. Utiliser les domaines sans cookie pour les   20. Groupes les composants dans un document
    composants                                       mulitpart (mobiles)

Recommandé pour vous

Why are you here?
Why are you here?Why are you here?
Why are you here?

A reflection on career and community. A call to follow your heart rather than some abstract notion of success.

cssconfcurationcssconf.eu
7 Habits of Exceptional Performance
7 Habits of Exceptional Performance7 Habits of Exceptional Performance
7 Habits of Exceptional Performance

The 7 Habits of Exceptional Performance discusses techniques for optimizing website performance. It recommends flushing the buffer early, using GET requests for AJAX, preloading components, avoiding filters, measuring performance metrics, and balancing new features with performance improvements. High performance should be baked into the development process from the start. Key metrics to track include page weight, response time, and HTTP requests.

businessperformancebreakthroughs
Design Fast Websites
Design Fast WebsitesDesign Fast Websites
Design Fast Websites

Nicole Sullivan gives a presentation on designing fast websites. She discusses why performance matters, how websites have grown more complex over time, and how poor performance can negatively impact businesses. She provides several best practices for optimizing websites, such as creating reusable components, using consistent styles, making modules transparent, optimizing images through sprites and compression, avoiding non-standard fonts and using columns instead of rows.

f2esummit08yahooyslow
Pourquoi la performance?
#1
 Perception
temps de réponse perçu

                slow crawl boring snail
      performance speed enjoyable stagnant
                      unexceptional
      urgent instant accelerate yawn
    perception unresponsive impatient delay
                 snap achievement
                moderate blah subdue drag
   better improve action pleasant pace apathetic
        quickprolong swift load sluggish sleepy
                promote
                         slack
                               cool
                  late unexciting reduced lag
    maximum drive prompt advance
                  complex heavy unmemorable
    fast hurry rush satisfying feel
                             obscure
    exceptional   brisk rapid exciting
                              why   wait
temps de réponse perçu

   performance speed enjoyable         slow crawl boring snail stagnant
   urgent instant accelerate              unexceptional yawn
 perception snap achievement          unresponsive impatient delay
better improve action pleasant pace   moderate blah subdue drag apathetic
                                      prolong slack load sluggish sleepy
     quick promote swift cool
 maximum drive prompt advance
                                        late unexciting reduced lag
                                        complex heavy unmemorable
 fast hurry rush satisfying feel               obscure
 exceptional   brisk rapid exciting
                                                   why   wait




Quelle est l’expérience utilisateur ?

Recommandé pour vous

Specialise or cross-skill
Specialise or cross-skillSpecialise or cross-skill
Specialise or cross-skill

This document discusses the evolution of roles in UX/UI design and development over time. It presents a brief history starting in the 1990s with webmasters and designers focused on HTML. By the late 1990s, developers also worked with HTML and usability/UX emerged. The roles continued to expand and combine skills, with modern practitioners often working across UX research, interaction design, visual design, front-end development, and considerations for accessibility. The document suggests that while specialization can be valuable, it is also beneficial for those in UX to learn some front-end development skills to enable quick prototyping and understand rich interactions and responsive design.

CSS: a rapidly changing world
CSS: a rapidly changing worldCSS: a rapidly changing world
CSS: a rapidly changing world

Extended slides from a recent Sydney Port80 presentation. The slides cover three overall topics: 1) a quick timeline of CSS-related events, 2) key events that changed CSS and 3) a discussion on writing better CSS.

html5 boilerplatecsssass
CSS Best practice
CSS Best practiceCSS Best practice
CSS Best practice

This document provides tips for best practices when writing CSS code. It recommends avoiding inline styles, header styles, multiple CSS files, and !important. It also recommends using shorthand properties, avoiding universal selectors and IDs when possible, optimizing images, and using CSS3 properties instead of images. In summary, the document outlines techniques for writing efficient, well-structured CSS code to improve performance and maintainability.

cssbest practice
Dans l’oeil du cyclone
• La perception et l’utilisabilité sont des mesures
  importantes
• Plus pertinentes que le simple onunload - onload
• La définitionest vague et change d’une page à
  l’utilisateur
                de ce qu’est le onload pour

  l’autre.
#2
“80% of consequences come from
                 20% of causes”
                   —Vilfredo Pareto
L’Importance du Front-End
L’Importance du Front-End



Back-end =

5%

Recommandé pour vous

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

2 heures de présentation sur les techniques de performance Web, leurs limites et la raison de le faire

webperf
RennesJS Talk webperf by Dareboost
RennesJS Talk webperf by DareboostRennesJS Talk webperf by Dareboost
RennesJS Talk webperf by Dareboost

Talk sur la "Performance Web : Enjeux, techniques et méthodologie" pour @RennesJS Rappel du programme : "Après la découverte de quelques success stories sur la performance web - des éléments pour se convaincre et savoir convaincre de l'importance de la webperf - nous aborderons les techniques élémentaires pour mettre vos pages web au régime (compression, optimisation des images, politique de cache, etc). Ce sera aussi l'occasion d'aborder HTTP/2 : les bonnes pratiques de performance ne sont peut être plus celles que vous croyez et vos habitudes vont devoir changer, nous verrons pourquoi ! Nous n'oublierons pas d'évoquer les différents indicateurs de performance (speedindex, start render, etc), et il est fort possible que je m'égare à l'occasion sur d'autres outils de qualité front-end, comme la Content Security Policy... En conclusion, on parlera de budget. Pas celui de la soirée, mais du budget de performance, à appliquer sur vos projets, pour créer une véritable culture de la performance web dans votre équipe !"

webwebpagetesthttp2
Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018

Mes slides du SEO Campday Lorraine 2018. Quick-wins pratiques pour accélérer le temps de chargement de votre site afin de satisfaire Google et ses utilisateurs et impacter positivement les KPIs.

seowebperfperformance
L’Importance du Front-End



                        Front-end =

                        95%
L’Importance du Front-End




Même ici, front-end = 88%
Pourquoi la performance?
Exemple




et ça continue encore, et encore...
en réalité c’est 7 à 8 fois plus long

Recommandé pour vous

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...

Conférence WP-Tech 4 et 5 décembre 2015 à Nantes. Votre site WordPress est lent ? Ce n’est pas une fatalité ! À travers de nombreux exemples issus de projets en production, cette conférence fera un tour des bonnes pratiques de développement et de configuration pour mettre en place des sites rapides, y compris pour des applications métiers complexes ou e-commerce. Déterminant pour l’expérience utilisateur, important pour le référencement, les performances de votre site font partie des optimisations inévitables pour booster votre audience sur le web et améliorer votre taux de conversion. La conférence sera également l’occasion de penser la bonne architecture des applications WordPress, les mécanismes spécifiques de l’outil pour accélérer la génération des pages et l’utilisation optimale de sa base de données. Au programme : Optimisations Client (concaténation, expire headers, compression gzip …) Optimisations Serveur (cache statique, cache opcode, cache objet, transients, serialization …) Plugins et développements tiers : comment faire le bon choix ? Exemples de hacks réutilisables HTTP/2 et PHP 7.0 : ce qui va changer

webperflazy-loadgzip
Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018

Google et les utilisateurs deviennent de plus en plus exigeants par rapport à la performance des sites. En 2018, 50% des sites mettent environ 15s à se charger alors qu’au delà de 3s, on a +25% de taux de rebond, l’expérience est frustrante et l’impact est négatif. Vous souhaitez surpasser les autres ? Satisfaire vos utilisateurs, gagner le respect de Google et voir un impact positif sur vos métriques (€, Bounce, dwell, ranking) ? Je vous donnerai mes meilleurs tips concrets et actionnables pour booster votre temps de chargement. De la méthodologie, des outils et des techniques avancées. #technicalseo #perfmatters. Conférence pour audience multidisciplinaires (technique, marketing) et pas exclusive au développeurs https://webisland.io

seoperfmattersperformance
Présentation welcom la webperf by object23
Présentation welcom la webperf by object23Présentation welcom la webperf by object23
Présentation welcom la webperf by object23

Qu'est ce que la Web perf ? C'est un ensemble de : Méthodes Bonnes pratiques Technologies Outils Permettant de maximiser l'expérience utilisateur d'un site web et de diminuer les ressources permettant de le produire. C’est une culture, une attitude, une obsession …

webperformance
Pourquoi côté client ?
                              TF1                  1,8%
                              AlloCiné             1,5%

•   La page HTML              FaceBook             7,2%
    représente moins de       Skyrock              1%
    10%                       France Telecom       34,7%
                              Free (portail)       1%
                              Le Monde             0,7%

•   90% offrent un meilleur   Amazon France        25,1%
    ROI                       Google (résultats)   68,8%
                              Yahoo! France        30,7%
                              Daily Motion         8,5%
Il y a encore un
travail énorme dans
le domaine de la
performance.
http://yuiblog.com/blog/2006/11/28/performance-research-part-1/
http://yuiblog.com/blog/2006/11/28/performance-research-part-1/

Recommandé pour vous

Performances Web - Afup 2008
Performances Web - Afup 2008Performances Web - Afup 2008
Performances Web - Afup 2008

Conférence Performance Web au forum PHP Afup 2008. Plus d'info sur http://performance.survol.fr/ Éric Daspet : http://eric.daspet.name/

Éric daspetperformancephp
La performance sur mobile
La performance sur mobileLa performance sur mobile
La performance sur mobile

Les utilisateurs sont encore moins patients sur mobile que sur navigateur de bureau, malgré leur débit à priori faible et la faible puissance de leur machine. Quelles techniques et quelles méthodologies pour limiter la casse ? Le RWD est il un fléau ou une opportunité ? La 4G sauvera-t-elle le monde ? Dans ce talk mêlant business, ergonomie de base, méthodologie et techniques, nous répondrons au moins partiellement à ces questions.

mobilemin2rienwebperf
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"

Cours de 1h30 pour HETIC - H4. Architecture Web. Présentation générale de l'architecture web, bons et mauvais exemples. Présentation des load balancers & proxys Présentation des caches (memcached, varnish...) Cloud

web architectureworld wide webweb design and development
#3
 Cache
Cache vide / rempli
    1                 2                 3
 l’utilisateur     l’utilisateur     l’utilisateur
   demande       demande d’autres    demande de
www.yahoo.com       pages web          nouveau
                                    www.yahoo.com
Cache vide / rempli
       1                  2
                         dns lookup
                                html
                              image
                              image
                         dns lookup
                               script
                                                                  3
                              image
                              image
                              image
                              image
  l’utilisateur       user requests
                              image
                              image
                                                            user re-requests
    demande          other web pages
                              image
                              image
                                                            www.yahoo.com
 www.yahoo.com                 script
                              image
                              image
                              image
                              image
                              image
                              image
                              image
                              image
                               script
                         dns lookup
                              image
                              image
                              image
                              image
                              image
                         dns lookup
                               script
                               script
                          stylesheet
                              image

avec un cache vide                      0   0.5   1   1.5     2    2.5   3
Cache vide / rempli
       1                  2
                         dns lookup
                                html
                              image
                              image
                         dns lookup
                               script
                                                                  3
                              image
                              image
                              image
                              image
  l’utilisateur       user requests
                              image
                              image
                                                            user re-requests
    demande          other web pages
                              image
                              image
                                                            www.yahoo.com
 www.yahoo.com                 script
                              image
                              image
                              image
                              image
                              image
                              image
                              image
                              image
                               script
                         dns lookup
                              image
                              image
                              image
                              image
                              image
                         dns lookup
                               script
                               script
                          stylesheet
                              image

avec un cache vide                      0   0.5   1   1.5     2    2.5   3

Recommandé pour vous

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 ?

A l’ère du mobile-first, les utilisateurs s’attendent à naviguer et acheter de façon fluide n’importe où et n’importe quand. Le temps de chargement est donc devenu LE critère le plus important pour les utilisateurs et cette exigence se reflète dans vos taux de conversion mobile. Depuis plus d'un an, RueDuCommerce est classé par le JDN comme le site mobile e-commerce le plus rapide de France. Comment les équipes de Rue Du Commerce ont-elles relevé ce défi ? Comment a-t-on mesuré les améliorations sur l’expérience utilisateur ? Quels sont les bénéfices sur les utilisateurs et sur le business ? Stéphane Rios, CEO de Fasterize et Aniss Boumrigua, Responsable du site RueDuCommerce.fr, vous partagent leurs expériences et leurs bonnes pratiques.

#webperf#webperformance#ecommerce
Le livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperfLe livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperf

Nous vous expliquons dans ce livre blanc ce qu’est la webperf, les bonnes méthodes et pratiques, les technologies et les outils à connaitre pour rendre l’expérience utilisateur unique, fluide et agréable sur votre site de vente en ligne. Pour illustrer ce thème nous avons réalisé une étude de cas, et la webperf devient plus claire !

webperformancesiteweblivreblanc
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é

La rapidité des sites web doit faire partie des stratégies marketing car elle impact le taux de transformation, le taux de rebond, le référencement et permet de gérer les pics de charge (en période de soldes par exemple)

impact webperfconférence fasterizetemps de chargement ecommerce
Cache vide / rempli
    1                 2                 3
 l’utilisateur     l’utilisateur     l’utilisateur
   demande       demande d’autres    demande de
www.yahoo.com       pages web          nouveau
                                    www.yahoo.com
Cache vide / rempli
    1                 2                 3
 l’utilisateur     l’utilisateur     l’utilisateur
   demande       demande d’autres    demande de
www.yahoo.com       pages web          nouveau
                                    www.yahoo.com
Cache vide / rempli
    1                 2                 3
 l’utilisateur     l’utilisateur     l’utilisateur
   demande       demande d’autres    demande de
www.yahoo.com       pages web          nouveau
                                    www.yahoo.com
Pourquoi du cache ?
Premier accès         Second accès




                Le gain est évident, non ?

Recommandé pour vous

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
2013webperfkiwiparty
Les performances Web mobile
Les performances Web mobileLes performances Web mobile
Les performances Web mobile

Slides support de la conférence sur les performances Web sur mobile, donnée pendant les ateliers Paris Web 2012

webperfpariswemobile
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifié

Cette conférence présente les problématiques du JavaScript pour la performance SEO, des propositions de solutions et les outils utilisés par les professionnels du SEO. Elle a été présentée par Aymeric Bouillat et Adrien Russo lors du SMX Paris 2023.

Cache vide / rempli
Cache vide / rempli




vide = 2.4 secondes
rempli = 0.9 seconde
rempli = 83% moins de poids (octets)
rempli = 90% moins de requetes HTTP.
Cache - technique
• Expires: Wed, 24 Oct 2018 21:32:59 GMT
  Cache-Control: public;max-age=315360000


• mod_expires sous Apache
  ExpiresDefault quot;access plus 1 month 15 days 2 hoursquot;
  ExpiresByType image/gif quot;modification plus 5 hours 3 minutesquot;




• Tous les composants statiques
Cache - mise à jour

• Une URL = Une version (en cache)
• Changer l’URL pour une nouvelle version
 • monscript-1.4.js
 • monscript.js?20081113T123559
    monscript.js?<?= filemtime($a); ?>

Recommandé pour vous

Techniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebTechniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages Web

Vos utilisateurs, votre consultant référencement et même votre ergonome devraient déjà vous poursuivre pour accélérer l'affichage de vos pages. Si ça n'est pas le cas, c'est à l'équipe front de l'introduire. Nous allons voir les techniques universelles dont disposent les développeurs Web ou les exploitants pour accélérer l'affichage des pages Web, y compris sur les mobiles. C'est surtout côté code front que se passe la course à l'affichage de pixel, mais nous discuterons également des choses à prendre en compte côté backend et machines. Nous passerons également en revue les arguments à avancer pour faire prendre conscience des enjeux de qualité, d'ergonomie et de finances associés à des sites rapides.

developpeurstechdays 2013
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...

Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop souvent oubliés Gilles Tran

Cache - CDN

• CDN - Content Delivery Network

• Serveur proche du client
• Latence faible
• Cache automatique
#3b
 (malheureusement, le
cache ne fonctionne pas
aussi bien qu’il pourrait)
À quel point le cache
bénéficie t-il à l’utilisateur ?
À quel point le cache
bénéficie t-il à l’utilisateur ?
 Q1: Quel % d’utilisateurs
 uniques voient la page avec un
 cache vide ?
 Q2: Quel % des pages sont vues
 avec un cache vide ?

Recommandé pour vous

Morning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesMorning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slides

Agenda : Les enjeux de la performance d'un site Web Les différents éléments de performance d'un site Web Infrastructure, architecture technique, tuning, architecture applicative, WebPerf L'obsession de la mesure Les outils Les quickwins Caches, upscaling, outscaling, sharding La démarche de test de charge Méthodologie, outils, types de test, données de test La démarche PDCA Intégrer les tests de charge au cycle de développement Environnement éphémère

webhttp2bonnes pratiques
Oxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceOxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performance

Oxalide MorningTech #2 - Démarche de performance 2ème MorningTech @Oxalide, animé par Adrien Le Priol (@Priolix) et Ludovic Piot (@lpiot), le 28 février 2017. Une vue d'ensemble sur la démarche et les outils pour aborder et maîtriser la performance de son site Web. En 2012, Amazon publiait une étude indiquant que chaque seconde de performance perdue sur son site de commerce lui coûtait $1.6 milliards de chiffre d'affaire. Par delà ce chiffre colossal avancé par le géant du Web, il est une réalité business : plus un site est lent, et moins les utilisateurs sont enclin à naviguer dessus. Les smartphones et le SoLoMo exacerbent cette réalité avec encore plus depuis 10 ans maintenant. Sur le terrain, l'architecture technique des sites Web, de plus en plus complexe, rendent ses performances impossibles à prédire : complexité des développements applicatifs, multitude des composants impliqués dans l'architecture technique, recours à des services tiers (issus du SI de votre entreprise, ou de services tiers), big data, machine learning… Une seule façon de prédire les performances : tester… en situation réelle. A travers les différentes étapes d'une démarche d'optimisation des performances d'un site Web, les enjeux et les écueils d'une telle démarche vous seront détaillés. Subject: Oxalide's MorningTech talk about an overview of how to deal with performance in a Web site. Date: 28-feb-2017 Speakers: Adrien Le Priol (@Priolix, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide) Language: french Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morning-tech-number-2-demarche-performance Lien SlideShare : https://www.slideshare.net/LudovicPiot/morning-tech-2-demarche-performance-slides YouTube Video capture: https://youtu.be/a8jSbvyBzYU Main topics: * Les enjeux de la performance d'un site Web * Les différents éléments de performance d'un site Web ** Infrastructure, architecture technique, tuning, architecture applicative, WebPerf * L'obsession de la mesure * Les outils * Les quickwins ** Caches, upscaling, outscaling, sharding * La démarche de test de charge ** Méthodologie, outils, types de test, données de test * La démarche PDCA ** Intégrer les tests de charge au cycle de développement ** Environnement éphémère * Questions / Réponses

oxalide perfs performance charge tmc gatling webpe
CLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usagesCLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usages

Présentation de Claude 3.5 Sonnet La famille de modèles Claude 3 est dotée de nouvelles capacités de vision qui permettent à Claude de comprendre et d’analyser des images, ouvrant ainsi des possibilités passionnantes pour l’interaction multimodale. Les artefacts : une nouvelle façon d’utiliser Claude voir aussi sur mon blog : www.ugaia.eu

aiiaclaude
Tester le cache du navigateur

      Ajouter une nouvelle image sur vos pages :
<img src=quot;image/blank.gifquot; height=quot;1quot; width=quot;1quot;/>



                    }1 px


       avec ces entêtes HTTP dans la réponse :
   Expires: Thu, 15 Apr 2004 20:00:00 GMT
   Last-Modified: Wed, 28 Sep 2006 23:49:57 GMT
Tester le cache du navigateur

      Ajouter une nouvelle image sur vos pages :
<img src=quot;image/blank.gifquot; height=quot;1quot; width=quot;1quot;/>


                    }1 px




       avec ces entêtes HTTP dans la réponse :
   Expires: Thu, 15 Apr 2004 20:00:00 GMT
   Last-Modified: Wed, 28 Sep 2006 23:49:57 GMT
Tester le cache du navigateur
Deux codes de réponse possibles
!
  200 – Le navigateur n’a pas l’image en cache

  304 – Le navigateur a l’image dans son cache mais
       doit vérifier la dernière date de mise à jour
Tester le cache du navigateur
Q1: Quel %             # utilisateurs uniques avec au
                          moins une réponse 200
d’utilisateurs
uniques voient la      # total d’utilisateurs uniques
page avec un cache
vide ?
Q2: Quel % des           # total de réponses 200
                          # de 200 + # de 304
pages sont vues
avec un cache vide ?


                                      }1 px

Recommandé pour vous

Rapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialiseRapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialise

rapprt de fin de dormation technicien specialise en developement informatique

information technologycomputercode
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptxCours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx

L'intelligence artificielle est un domaine de l'informatique qui se concentre sur la création de systèmes et de technologies capables de simuler des processus cognitifs humains tels que l'apprentissage, la résolution de problèmes, la reconnaissance de formes, et la prise de décision. Ce cours vise à explorer les différentes techniques et méthodes utilisées pour développer et améliorer les capacités des machines à penser et agir de manière autonome. L'une des principales composantes de l'intelligence artificielle est l'apprentissage automatique, qui consiste à utiliser des algorithmes pour permettre aux machines d'apprendre à partir de données et de s'améliorer progressivement sans intervention humaine. Cette approche est utilisée dans de nombreux domaines tels que la reconnaissance faciale, la recommandation de produits, la traduction automatique, et la conduite autonome. Au cours de ce cours, les étudiants sont initiés aux concepts fondamentaux de l'intelligence artificielle, tels que les réseaux de neurones, l'apprentissage supervisé et non supervisé, les processus de décision Markov, et les algorithmes de traitement automatique du langage naturel. Ils apprennent également à mettre en œuvre ces concepts en utilisant des langages de programmation tels que Python et des bibliothèques logicielles telles que TensorFlow et scikit-learn. En plus d'explorer les techniques de base de l'intelligence artificielle, ce cours aborde également des sujets avancés tels que l'apprentissage en profondeur, les réseaux de neurones convolutifs, et les réseaux générateurs adverses. Les étudiants sont encouragés à participer à des projets pratiques qui leur permettent d'appliquer les connaissances acquises et de développer leurs compétences en matière de résolution de problèmes. En conclusion, ce cours de l'intelligence artificielle vise à former les étudiants aux concepts et aux technologies de pointe dans le domaine en pleine expansion de l'intelligence artificielle. Grâce à une combinaison de théorie et de pratique, les étudiants acquièrent les compétences nécessaires pour relever les défis de l'avenir et contribuer au développement de systèmes intelligents et autonomes. Jacques KIZA DIMANDJA

1. intelligence artificielle 2apprentissage automatiqueréseaux de neurones
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...

Vision de Claude 3.5 SONNET La famille de modèles Claude 3 est dotée de nouvelles capacités de vision qui permettent à Claude de comprendre et d’analyser des images, ouvrant ainsi des possibilités passionnantes pour l’interaction multimodale. https://www.ugaia.eu/2024/07/claude-35.html Ce guide décrit comment utiliser des images dans Claude, y compris les meilleures pratiques, les exemples de code et les limitations à garder à l’esprit. Comment utiliser la vision Utilisez les capacités de vision de Claude via : • claude.ai. Téléchargez une image comme vous le feriez pour un fichier, ou faites glisser et déposez une image directement dans la fenêtre de discussion. • L’établi de la console. Si vous sélectionnez un modèle qui accepte les images (modèles Claude 3 uniquement), un bouton pour ajouter des images apparaît en haut à droite de chaque bloc de message Utilisateur. Demande d’API. Voir les exemples dans ce guide.

claudesonnetc35s
Résultats surprenants
1.00



0.75



0.50



0.25




       1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17
           uu avec cache vide                   pv avec cache vide
Résultats surprenants
1.00



0.75



0.50



0.25




       1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17
           uu avec cache vide                   pv avec cache vide
40-60% utilisateurs
20% pages vues
À emporter chez vous
   1.Les utilisateurs avec un
     cache vide sont plus
     fréquents que vous ne le
     pensez.
   2.En conséquence,
     optimisez et pour un
     cache rempli et pour un
     cache vide

Recommandé pour vous

Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdfTutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf

Le tutoriel interactif d’ingénierie rapide d’Anthropic. Ce cours est destiné à vous fournir une compréhension complète, étape par étape, de la façon de concevoir des invites optimales dans Claude. Après avoir terminé ce cours, vous serez en mesure de : Maîtriser la structure de base d’une bonne invite Reconnaître les modes de défaillance courants et apprendre les techniques « 80/20 » pour y remédier Comprendre les forces et les faiblesses de Claude Créez des invites puissantes à partir de zéro pour les cas d’utilisation courants Ce tutoriel existe également sur Google Sheets en utilisant l’extension Claude for Sheets d’Anthropic. Nous vous recommandons d’utiliser cette version car elle est plus conviviale. Lorsque vous êtes prêt à commencer, allez à pour continuer.01_Basic Prompt Structure

claudec35ssonnet
procede de fabrication mecanique et industriel
procede de fabrication mecanique et industrielprocede de fabrication mecanique et industriel
procede de fabrication mecanique et industriel

procede de fabrication mecanique

Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)

Ansible, Terraform, CloudFormation, [insert your favorite tech here]… Les solutions d’infra-as-code sont pléthores. Alors, pourquoi parler du dernier rejeton à la mode porté par le CNCF ? Allez, spoilons un peu l'affaire ! Bâti sur Kubernetes, Crossplane permet lui de faire converger le delivery d’une app containerisée avec toutes les autres ressources requises hors de votre cluster K8S préféré, et dont elle aura toutefois grand besoin pour fonctionner correctement : un bucket S3, une base de donnée managée, etc.. Vous orchestrez ainsi le cycle de vie de votre application complète avec une seule et même perspective. Ajoutez à cela un multicloud facilité, ou encore une vrai capacité à s’inscrire dans une démarche GitOps, et vous obtenez là une solution très efficace pour organiser vos prochains déploiements !

crossplanekubernetesplatform
http://yuiblog.com/blog/2007/01/04/performance-research-part-2/
http://yuiblog.com/blog/2007/01/04/performance-research-part-2/
#4
Téléchargements
    parallèles
Téléchargements parallèles
Deux composants     en parallèle     par domaine




                       GIF
                                              GIF
 GIF    GIF
                                              GIF


                       GIF




                  d’après HTTP/1.1

Recommandé pour vous

Meetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances LiferayMeetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances Liferay

Retrouvez toute la communauté Liferay francophone pour un meetup virtuel (100% remote) pendant la pause déjeuner du jeudi 4 juillet. Ce meetup sera l'occasion de vous présenter 5 sujets auxquels consacrer un peu de veille technique entre deux siestes sur la plage cet été. Pour chaque sujet on vous fait un petit résumé, on en discute ensemble et bien sur on vous donne tous les pointeurs utiles pour vous occuper un peu les jours de pluie cet été (rares bien entendu). Au programme : HTMX, Alpine.js, animation.css, N8N, Sentry, GlitchTip Et bien sur les traditionnels échanges libres ne seront pas oubliés !

htmxalpine.jsanimation.css
Téléchargements parallèles
Téléchargements parallèles
                           html
                      component
                      component


Deux en parallèle
                      component
                      component
                      component
                      component
                      component
                      component
                      component
                      component

                                  0   0.425   0.850   1.275   1.700




Quatre en parallèle



Huit en parallèle
Téléchargements parallèles
                           html
                      component
                      component


Deux en parallèle
                      component
                      component
                      component
                      component
                      component
                      component
                      component
                      component

                                  0   0.425   0.850   1.275   1.700
                           html
                      component
                      component



Quatre en parallèle
                      component
                      component
                      component
                      component
                      component
                      component
                      component
                      component

                                  0   0.375   0.750   1.125   1.500




Huit en parallèle
Téléchargements parallèles
                           html
                      component
                      component


Deux en parallèle
                      component
                      component
                      component
                      component
                      component
                      component
                      component
                      component

                                  0   0.425   0.850   1.275   1.700
                           html
                      component
                      component



Quatre en parallèle
                      component
                      component
                      component
                      component
                      component
                      component
                      component
                      component

                                  0   0.375   0.750   1.125   1.500

                           html
                      component
                      component
                      component
                      component
                      component


Huit en parallèle
                      component
                      component
                      component
                      component
                      component

                                  0   0.375   0.750   1.125   1.500

Recommandé pour vous

Optimiser
les téléchargements parallèles


 temps de
  réponse
(secondes)




                alias
Optimiser
les téléchargements parallèles
             1.4       36 x 36 px (0.9 Kb)     116 x 61 px (3.4 Kb)

             1.2

             1.0

             0.8
 temps de
  réponse
(secondes)   0.6

             0.4

             0.2

              0
                   1      2             4           5             10

                                       alias
Optimiser
les téléchargements parallèles
             1.4
                       36 x 36 px (0.9 Kb)   116 x 61 px (3.4 Kb)   average



             1.2




             1.0




             0.8
 temps de
  réponse
(secondes)   0.6




             0.4




             0.2




              0
                   1           2                 4                  5         10



                                                     alias
Optimiser
les téléchargements parallèles
             1.4
                       36 x 36 px (0.9 Kb)   116 x 61 px (3.4 Kb)   average



             1.2




             1.0




             0.8
 temps de
  réponse
(secondes)   0.6




             0.4




             0.2




              0
                   1           2                 4                  5         10



règle d’or : utiliser au moins 2 domaines, pas plus de 4

Recommandé pour vous

À emporter chez vous


• attention au gâchis de temps CPU
• la durée d’une requête DNS varie suivant votre
  FAI et votre localisation géographique

• le nom de domaine peut ne pas être en cache
http://yuiblog.com/blog/2007/04/11/performance-research-part-4/
http://yuiblog.com/blog/2007/04/11/performance-research-part-4/
Résumé
What the 80/20 Rule Tells Us about
 Reducing HTTP Requests
!   http://yuiblog.com/blog/2006/11/28/performance-research-part-1/

Browser Cache Usage – Exposed!
!   http://yuiblog.com/blog/2007/01/04/performance-research-part-2/

When the Cookie Crumbles
!   http://yuiblog.com/blog/2007/03/01/performance-research-part-3/

Maximizing Parallel Downloads in the
 Carpool Lane
!   http://yuiblog.com/blog/2007/04/11/performance-research-part-4/

Recommandé pour vous

#5
Optimiser les images et
     les sprites
CSS Sprites




CSS:



               …

HTML:



                   http://alistapart.com/articles/sprites
CSS Sprites




   CSS:



                                   …

  HTML:



L’image combinée est plus légère
                                       http://alistapart.com/articles/sprites
Pourquoi est-ce que ça fonctionne ?
Les balises HTML sont comme des fenêtres.

Recommandé pour vous

Pourquoi est-ce que ça fonctionne ?
Les balises HTML sont comme des fenêtres.
Pourquoi est-ce que ça fonctionne ?
Les balises HTML sont comme des fenêtres.
Pourquoi est-ce que ça fonctionne ?
Les balises HTML sont comme des fenêtres.
Un exemple pratique ?

Recommandé pour vous

Un exemple pratique ?
CSS Sprites
      background-image: url(sprites.png) ;
      background-position: -100px -200px;
      background-repeat: no-repeat ;
      width: 15px ;
      height: 15px ;




      On évite des dizaines
       de requêtes HTTP
Optimiser les sprites
1. Combien de pages a
   votre site ?

2. Votre site est-il
   modulaire ?
   (il devrait !)

3. Combien de temps
   votre équipe peut
   passer sur la
   maintenance ?
Éviter les filtres
   Pourquoi utiliser AlphaImageLoader ?

IE6 ne supporte pas la transparence partielle
   nativement. Le filtre force ce support.

Recommandé pour vous

Problèmes avec les filtres

 • Bloque le rendu, gèle le navigateur
 • Plus grosse consomation mémoire
 • Par élément, pas par image !
Solution: éviter
          AlphaImageLoader
1. MIEUX: à éviter complètement, utiliser PNG8 qui dégrade
   correctement dans IE < 7

2. Sinon: Utiliser un hack CSS avec l’underscore pour que le filtre ne
   s’applique que à IE < 7

   #elem {

   background: url(some.png);
   _background: none;
   _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader
                 (src='some.png', sizingMethod='crop');

   }
Amélioration
    progressive de
        PNG8
Créer l’image avec transparence binaire.
Dans Fireworks, ajouter quelques pixels
         en semi-transparence.
IE6




                                            Firefox
                                            Opera
                                            IE7+
                                            Safari



Les bons navigateurs ont +
 Et les dinausores ont un cas par défaut acceptable

Recommandé pour vous

Données de tests
  Retirer Alpha Image Loader



                               100ms
                               Yahoo! search
Réduire les images
Deux problèmes distincts
   Design
            Qualité versus Optimisation


                                  Ingénierie
Réduire les images

Étape 1: Qualité, Le graphiste choisit la qualité
(par exemple via “save for the web”)
Étape 2: Compression sans perte pour retirer les
dernier octets de l’image.

Recommandé pour vous

LE PROBLÈME
Optimizing images sucks.
LOURD = LENT
Images,
  qui s’en
préoccupe ?
 Top 10 sites web
    45.6%
 du poids des pages
  vient des images.
.94

Recommandé pour vous

7 ERREURS
Optimisation d’images
erreur #1
Utiliser GIF quand PNG est plus léger



                             20.42%
erreur #2
Ne pas passer les images par PNGcrush



                            16.05%
erreur #3
Ne pas retirer les méta données JPEG



                            11.85%

Recommandé pour vous

erreur #4
Utiliser des PNG pleines couleurs au lieu de PNG8
erreur #5
Utiliser Alpha Image Loader



                              100ms
                              yahoo search
erreur #6
Envoyer les images générées dynamiquement “telles quelles”



                                       38-55%
                                         google charts api
erreur #7
Ne pas combiner les images

Recommandé pour vous

SOLUTION?
JPEG Tran


     Outils excellents,
 tellement de possibilités
                      PngOptimizer
OptiPNG
UN OUTIL. BEAUCOUP
    D’ALGORITHMES.
Smush it optimise automatiquement les images en
     utilisant le meilleur outil open source
démo




http://smush.it

Recommandé pour vous

Pourquoi la performance?
Outils.
IBM Page
      Detailer
      Packet sniffer.
Windows seulement (IE, FF, ...).
Démo gratuite, licence à $300

http://alphaworks.ibm.com/tech/
           pagedetailer
Firebug
Développement web évolué.
         Gratuit.

Recommandé pour vous

YSlow
Apperçus et analyses de
 performance. Gratuit.
Gomez
     Mesures tierces.
Comparaison de concurrence.
HTTPfox
   ??
Webpagetest.org
 Waterfall of your page load
  performance as well as a
   comparison against an
   optimization checklist.

Recommandé pour vous

smush.it
L’optimisation des images sans
       perte de qualité
Gestion du projet
d’amélioration des
  performances.
Équilibrer le budget
  performance.
Trois étapes

• Mesurer la performance et
  les tendances

• Estimer l'impact en
  performance de toutes les
  nouvelles fonctionnalités

• Estimer l’impact de toutes les
  améliorations de
  performance

Recommandé pour vous

Estimer ? comment ?
               Traquer :
      • Poids de la page *
      • Temps de réponse
      • Requêtes HTTP


* Pour les sites plus complexes, traquer le poids de la page par
            type de composants : css, js, images, flash
Fonctionnalités = Optimisation
Vérifier les attentes.



      • L’impact de chaque fonctionnalité était-il ce que
        vous aviez estimé ?

      • Est-ce que les optimisations ont amélioré la
        situation autant que vous le pensiez ?
Allouer du temps,
  équilibrer le budget




améliorations de performance
             vs
  nouvelles fonctionnalités

                              124

Recommandé pour vous

Pour plus d’informations :
High Performance
   Web Sites
Connaissances fondamentales
  pour les ingénieur web
         front-end

      par Steve Souders,
   avec des recherches de Yahoo!
Exceptional
Performance
  sur YDN
http://developer.yahoo.com/
        performance
Articles sur le
  YUIBlog
 http://yuiblog.com/blog/
  category/performance

Recommandé pour vous

Liens
book: http://www.oreilly.com/catalog/9780596514211/
examples: http://stevesouders.com/examples/
image maps: http://www.w3.org/TR/html401/struct/objects.html#h-13.6
CSS sprites: http://alistapart.com/articles/sprites
inline images: http://tools.ietf.org/html/rfc2397
jsmin: http://crockford.com/javascript/jsmin
dojo compressor: http://dojotoolkit.org/docs/shrinksafe
HTTP status codes: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
IBM Page Detailer: http://alphaworks.ibm.com/tech/pagedetailer
Fasterfox: http://fasterfox.mozdev.org/
LiveHTTPHeaders: http://livehttpheaders.mozdev.org/
Firebug: http://getfirebug.com/
YUIBlog: http://yuiblog.com/blog/2006/11/28/performance-research-part-1/
          http://yuiblog.com/blog/2007/01/04/performance-research-part-2/
          http://yuiblog.com/blog/2007/03/01/performance-research-part-3/
          http://yuiblog.com/blog/2007/04/11/performance-research-part-4/
YDN: http://developer.yahoo.net/blog/archives/2007/03/high_performanc.html
      http://developer.yahoo.net/blog/archives/2007/04/rule_1_make_few.html
Images CC utilisées
“Zipper Pocket” by jogales: http://www.flickr.com/photos/jogales/11519576/
“Need for Speed” by Amnemona: http://www.flickr.com/photos/marinacvinhal/379111290/
“I wonder what flavour it is?” by blather: http://www.flickr.com/photos/deadlyphoto/411770353/
“takeout boxes from Grand Shanghai” by massdistraction: http://www.flickr.com/photos/sharynmorrow/11263821/
“takeout” by dotpolka : http://www.flickr.com/photos/dotpolka/249129144/
“ice cream cone melting/rome” by Megandavid : http://www.flickr.com/photos/megandavid/189332042/
“nikon em bokeh” by dsevilla: http://www.flickr.com/photos/dsevilla/249202834/
“maybe” by Tal Bright: http://www.flickr.com/photos/bright/118197469/
“how do they do that” by Fort Photo: http://www.flickr.com/photos/fortphoto/388825145/
“Gorgeous iceberg 7 [Le Toit du Monde]” by Adventure Addict http://www.flickr.com/photos/adventureaddict/
    35290307/
“molasses-spice cookies” ilmungo: http://www.flickr.com/photos/ilmungo/65345233/
“Driving is fun” by Ben McLeod: http://www.flickr.com/photos/benmcleod/59948935/
“Dozen eggs” by aeA: http://www.flickr.com/photos/raeallen/96238870/
“Max speed 15kmh” by xxxtoff: http://www.flickr.com/photos/xxxtoff/219781763/
“Stairway to heaven” ognita: http://www.flickr.com/photos/ognita/503915547/
“flaps up” by http://www.flickr.com/photos/jurvetson/74274113/
“Fast Cat” by http://www.flickr.com/photos/raylopez/708023176/
“blues” by http://www.flickr.com/photos/pankaj/1877184829/
Images CC utilisées
“Vintage Kodak Studio Scales Set and Bottle” by http://www.flickr.com/photos/captkodak/
    272746539/

“Assumtion, Minissota” by http://www.flickr.com/photos/afiler/226337382/




             Merci encore à Nate Koechley (Yahoo!) et à l’équipe YUI
Notre atelier demain

• Côté pratique
• Démo des outils
• Apprendre faire une évaluation de performance
• Comment convaincre le business a participer
• Où se trouve plus d’info

Recommandé pour vous

Questions ?
Éric Daspet                 Nicole Sulivan

http://eric.daspet.name/        nicole@stubbornella.org
                                www.stubbornella.org
http://performance.survol.fr/   “stubbornella” sur le web
(livre en préparation)          http://smushit.com/

Contenu connexe

Tendances

We❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOWe❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEO
Erlé Alberton
 
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
RESONEO
 
WordPress et SEO - SEOCampus 2013
WordPress et SEO - SEOCampus 2013WordPress et SEO - SEOCampus 2013
WordPress et SEO - SEOCampus 2013
Daniel Roch - SeoMix
 
Responsive WebDesign performant
Responsive WebDesign performantResponsive WebDesign performant
Responsive WebDesign performant
Refficience
 
Référencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO CampRéférencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO Camp
SEO CAMP
 
Optimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressOptimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPress
Daniel Roch - SeoMix
 
Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?
Semrush France
 
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Veronique Duong
 
La guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS DrupalLa guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS Drupal
Daniel Roch - SeoMix
 
Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?
Patrick Valibus
 
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
Jean-Pierre Vincent
 
100 jours pour développer son trafic !
100 jours pour développer son trafic !100 jours pour développer son trafic !
100 jours pour développer son trafic !
Erlé Alberton
 
Introduction à la webperf
Introduction à la webperfIntroduction à la webperf
Introduction à la webperf
Jean-Pierre Vincent
 

Tendances (13)

We❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOWe❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEO
 
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
SEO campus 2019 | Les clés d’un site web (beaucoup) plus rapide selon des fac...
 
WordPress et SEO - SEOCampus 2013
WordPress et SEO - SEOCampus 2013WordPress et SEO - SEOCampus 2013
WordPress et SEO - SEOCampus 2013
 
Responsive WebDesign performant
Responsive WebDesign performantResponsive WebDesign performant
Responsive WebDesign performant
 
Référencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO CampRéférencement avec Joomla - SEO Camp
Référencement avec Joomla - SEO Camp
 
Optimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressOptimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPress
 
Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?Quel ROI attendre d'un projet de création de pages AMP ?
Quel ROI attendre d'un projet de création de pages AMP ?
 
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...Seo campus 2016  : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
Seo campus 2016 : Comment faire du SEO sur Baidu, le moteur de recherche n°1...
 
La guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS DrupalLa guerre SEO du CMS : WordPress VS Drupal
La guerre SEO du CMS : WordPress VS Drupal
 
Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?Comment réussir une migration de site web en seo ?
Comment réussir une migration de site web en seo ?
 
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
 
100 jours pour développer son trafic !
100 jours pour développer son trafic !100 jours pour développer son trafic !
100 jours pour développer son trafic !
 
Introduction à la webperf
Introduction à la webperfIntroduction à la webperf
Introduction à la webperf
 

En vedette

After YSlow "A"
After YSlow "A"After YSlow "A"
After YSlow "A"
Nicole Sullivan
 
What is Object Oriented CSS?
What is Object Oriented CSS?What is Object Oriented CSS?
What is Object Oriented CSS?
Nicole Sullivan
 
CSS Bloat!
CSS Bloat!CSS Bloat!
CSS Bloat!
Nicole Sullivan
 
Building the Media Block in ReactJS
Building the Media Block in ReactJS Building the Media Block in ReactJS
Building the Media Block in ReactJS
Nicole Sullivan
 
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools
Nicole Sullivan
 
The Fast And The Fabulous
The Fast And The FabulousThe Fast And The Fabulous
The Fast And The Fabulous
Nicole Sullivan
 
Don't feed the trolls
Don't feed the trollsDon't feed the trolls
Don't feed the trolls
Nicole Sullivan
 
Creating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve PerformanceCreating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve Performance
Nicole Sullivan
 
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
Nicole Sullivan
 
Our Best Practices Are Killing Us
Our Best Practices Are Killing UsOur Best Practices Are Killing Us
Our Best Practices Are Killing Us
Nicole Sullivan
 
Object Oriented CSS
Object Oriented CSSObject Oriented CSS
Object Oriented CSS
Nicole Sullivan
 
Cache
CacheCache
Taming CSS Selectors
Taming CSS SelectorsTaming CSS Selectors
Taming CSS Selectors
Nicole Sullivan
 
CSS Wish List @JSConf
CSS Wish List @JSConfCSS Wish List @JSConf
CSS Wish List @JSConf
Nicole Sullivan
 
Why are you here?
Why are you here?Why are you here?
Why are you here?
Nicole Sullivan
 
7 Habits of Exceptional Performance
7 Habits of Exceptional Performance7 Habits of Exceptional Performance
7 Habits of Exceptional Performance
Nicole Sullivan
 
Design Fast Websites
Design Fast WebsitesDesign Fast Websites
Design Fast Websites
Nicole Sullivan
 
Specialise or cross-skill
Specialise or cross-skillSpecialise or cross-skill
Specialise or cross-skill
Russ Weakley
 
CSS: a rapidly changing world
CSS: a rapidly changing worldCSS: a rapidly changing world
CSS: a rapidly changing world
Russ Weakley
 
CSS Best practice
CSS Best practiceCSS Best practice
CSS Best practice
Russ Weakley
 

En vedette (20)

After YSlow "A"
After YSlow "A"After YSlow "A"
After YSlow "A"
 
What is Object Oriented CSS?
What is Object Oriented CSS?What is Object Oriented CSS?
What is Object Oriented CSS?
 
CSS Bloat!
CSS Bloat!CSS Bloat!
CSS Bloat!
 
Building the Media Block in ReactJS
Building the Media Block in ReactJS Building the Media Block in ReactJS
Building the Media Block in ReactJS
 
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools
 
The Fast And The Fabulous
The Fast And The FabulousThe Fast And The Fabulous
The Fast And The Fabulous
 
Don't feed the trolls
Don't feed the trollsDon't feed the trolls
Don't feed the trolls
 
Creating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve PerformanceCreating Living Style Guides to Improve Performance
Creating Living Style Guides to Improve Performance
 
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective,  Ajax ...
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
 
Our Best Practices Are Killing Us
Our Best Practices Are Killing UsOur Best Practices Are Killing Us
Our Best Practices Are Killing Us
 
Object Oriented CSS
Object Oriented CSSObject Oriented CSS
Object Oriented CSS
 
Cache
CacheCache
Cache
 
Taming CSS Selectors
Taming CSS SelectorsTaming CSS Selectors
Taming CSS Selectors
 
CSS Wish List @JSConf
CSS Wish List @JSConfCSS Wish List @JSConf
CSS Wish List @JSConf
 
Why are you here?
Why are you here?Why are you here?
Why are you here?
 
7 Habits of Exceptional Performance
7 Habits of Exceptional Performance7 Habits of Exceptional Performance
7 Habits of Exceptional Performance
 
Design Fast Websites
Design Fast WebsitesDesign Fast Websites
Design Fast Websites
 
Specialise or cross-skill
Specialise or cross-skillSpecialise or cross-skill
Specialise or cross-skill
 
CSS: a rapidly changing world
CSS: a rapidly changing worldCSS: a rapidly changing world
CSS: a rapidly changing world
 
CSS Best practice
CSS Best practiceCSS Best practice
CSS Best practice
 

Similaire à Pourquoi la performance?

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
Jean-Pierre Vincent
 
RennesJS Talk webperf by Dareboost
RennesJS Talk webperf by DareboostRennesJS Talk webperf by Dareboost
RennesJS Talk webperf by Dareboost
Damien Jubeau
 
Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Aymen Loukil
 
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...
pierredargham
 
Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018
Aymen Loukil
 
Présentation welcom la webperf by object23
Présentation welcom la webperf by object23Présentation welcom la webperf by object23
Présentation welcom la webperf by object23
Brigitte Marandon
 
Performances Web - Afup 2008
Performances Web - Afup 2008Performances Web - Afup 2008
Performances Web - Afup 2008
Eric D.
 
La performance sur mobile
La performance sur mobileLa performance sur mobile
La performance sur mobile
Jean-Pierre Vincent
 
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"
Adyax
 
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 livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperfLe livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperf
Object Vingt Trois
 
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
 
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
 
Les performances Web mobile
Les performances Web mobileLes performances Web mobile
Les performances Web mobile
Jean-Pierre Vincent
 
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifié
Adrien Russo
 
Techniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebTechniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages Web
Microsoft
 
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
SEO CAMP
 
Morning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesMorning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slides
Oxalide
 
Oxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceOxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performance
Ludovic Piot
 

Similaire à Pourquoi la performance? (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
 
RennesJS Talk webperf by Dareboost
RennesJS Talk webperf by DareboostRennesJS Talk webperf by Dareboost
RennesJS Talk webperf by Dareboost
 
Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018Quick-wins pour accélérer son site web - seo camp day lorraine 2018
Quick-wins pour accélérer son site web - seo camp day lorraine 2018
 
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...
 
Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018Améliorez la vitesse de chargement de votre site - Webisland 2018
Améliorez la vitesse de chargement de votre site - Webisland 2018
 
Présentation welcom la webperf by object23
Présentation welcom la webperf by object23Présentation welcom la webperf by object23
Présentation welcom la webperf by object23
 
Performances Web - Afup 2008
Performances Web - Afup 2008Performances Web - Afup 2008
Performances Web - Afup 2008
 
La performance sur mobile
La performance sur mobileLa performance sur mobile
La performance sur mobile
 
Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"Cours 1/3 "Architecture Web"
Cours 1/3 "Architecture Web"
 
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 livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperfLe livre blanc pour tout savoir de la webperf
Le livre blanc pour tout savoir de la webperf
 
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é
 
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
 
Les performances Web mobile
Les performances Web mobileLes performances Web mobile
Les performances Web mobile
 
Le SEO JavaScript démystifié
Le SEO JavaScript démystifiéLe SEO JavaScript démystifié
Le SEO JavaScript démystifié
 
Techniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebTechniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages Web
 
Html5 now light
Html5 now lightHtml5 now light
Html5 now light
 
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
Les clés d’un site (beaucoup) plus rapide selon des facteurs qui restent trop...
 
Morning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slidesMorning tech #2 - Démarche performance slides
Morning tech #2 - Démarche performance slides
 
Oxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performanceOxalide Morning tech #2 - démarche performance
Oxalide Morning tech #2 - démarche performance
 

Dernier

CLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usagesCLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usages
Erol GIRAUDY
 
Rapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialiseRapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialise
GammingWorld2
 
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptxCours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Jacques KIZA DIMANDJA
 
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Erol GIRAUDY
 
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdfTutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Erol GIRAUDY
 
procede de fabrication mecanique et industriel
procede de fabrication mecanique et industrielprocede de fabrication mecanique et industriel
procede de fabrication mecanique et industriel
saadbellaari
 
Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)
Adrien Blind
 
Meetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances LiferayMeetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances Liferay
Sébastien Le Marchand
 

Dernier (8)

CLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usagesCLAUDE 3.5 SONNET EXPLICATIONS sur les usages
CLAUDE 3.5 SONNET EXPLICATIONS sur les usages
 
Rapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialiseRapport de fin de formation/fin d'etudes, technicien specialise
Rapport de fin de formation/fin d'etudes, technicien specialise
 
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptxCours d'Intelligence Artificielle et Apprentissage Automatique.pptx
Cours d'Intelligence Artificielle et Apprentissage Automatique.pptx
 
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
Vision de Claude 3.5 SONNET Comment utiliser la vision Utilisez les capacités...
 
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdfTutoriel interactif d’ingénierie rapide d’Anthropic.pdf
Tutoriel interactif d’ingénierie rapide d’Anthropic.pdf
 
procede de fabrication mecanique et industriel
procede de fabrication mecanique et industrielprocede de fabrication mecanique et industriel
procede de fabrication mecanique et industriel
 
Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)Introduction à Crossplane (Talk Devoxx 2023)
Introduction à Crossplane (Talk Devoxx 2023)
 
Meetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances LiferayMeetup LFUG : Cahier de vacances Liferay
Meetup LFUG : Cahier de vacances Liferay
 

Pourquoi la performance?

  • 1. High Performance Web Sites Éric Daspet Nicole Sullivan Développeur web à Yahoo! nicolesl@yahoo-inc.com http://eric.daspet.name/ www.stubbornella.org http://developer.yahoo.com/performance
  • 2. Qui sommes-nous ? • Éric Daspet Développeur web à Yahoo! • Nicole Sullivan Équipe Exceptional Performance à Yahoo!
  • 3. Quantifier et améliorer la performance de tout produit Yahoo! mondial
  • 7. 7
  • 10. 10
  • 11. 11
  • 12. 12
  • 13. 13
  • 14. 2: Les sites sont plus lourd
  • 15. Les sites web modernes & les application web ont changer
  • 16. De 2003 à 2008: 97K à 312K. 25.7 à 49.9 objects.
  • 17. Les derniers 12 mois, le top1000 sites: De 250K à 310.4K. WebSiteOptimization.com/speed/tweak/average-web-page
  • 18. TF1 5s AlloCiné 4s FaceBook 4,6s Skyrock 3,7s France Telecom 10,1s! Free (portail) 4,4s Le Monde 7,9s Amazon France 3,7s Google (résultats) 0,24s Yahoo! France 1,8s Daily Motion 2,4s
  • 19. 3: L’utilisateur veut un site rapide
  • 20. Quel est le problème ? • 6 sur 11 ont un chargement > 4s • Abandons, agacement, • Impacte votre business
  • 24. Yahoo!: abandons +5 à 9% +400 ms
  • 26. Google: recherches -20% +500 ms
  • 28. Google: +30% trafic -30% poids
  • 29. Qu’est-ce que la performance?
  • 30. Deux Types: Temps de réponse & Efficacité du systeme
  • 31. Notre focus est sur la temps de réponse des produits web
  • 32. Cueillir les fruits de la performance (certains bas, certains hauts)
  • 33. Nos buts principaux • Moins de requêtes HTTP • Des composants moins lourds • Paralléliser les requêtes
  • 34. Bonnes pratiques http://developer.yahoo.com/performance Mise à jour des 14 recommandations initiales 20 recommandations ajoutées
  • 35. 14 bonnes pratiques (mises à jour) Faire moins de requêtes HTTP Utiliser un réseau de diffusion de contenu (CDN) Ajouter des entêtes “Expires” (ou Cache-control) Compresser les composants avec gzip Mettre les CSS en haut Déplacer les CSS en bas (en ligne aussi) Éviter les “expression” en CSS Externaliser CSS et Javascript Réduire les requêtes DNS Minimifier les Javascript et CSS (en ligne aussi) Éviter les redirections Retirer les scripts dupliqués Configurer les ETags Rendre Ajax cachable http://developer.yahoo.com/performance/rules.html
  • 36. Après YSlow “A”? 1. Vider le tampon rapidement (buffer) 11. Minimiser les accès DOM 2. Utiliser GET pour Ajax 12. Développer des gestionnaires d’événements sympa 3. Post-charger les composants 13. Choisir <link> plutôt que @import 4. Pré-charger les composants 14. Éviter “filter” 5. Réduire le nombre d’éléments DOM 15. Optimiser les images 6. Séparer les composants sur plusieurs domaines 16. Optimiser les sprites CSS 7. Réduire le nombre d’iframe 17. Ne redimensionnez pas les images en HTML 8. Pas de 404 18. Rendez favicon.ico léger et cachable 9. Réduire la taille des cookies 19. Nouveauté iPhone 3G 10. Utiliser les domaines sans cookie pour les 20. Groupes les composants dans un document composants mulitpart (mobiles)
  • 39. temps de réponse perçu slow crawl boring snail performance speed enjoyable stagnant unexceptional urgent instant accelerate yawn perception unresponsive impatient delay snap achievement moderate blah subdue drag better improve action pleasant pace apathetic quickprolong swift load sluggish sleepy promote slack cool late unexciting reduced lag maximum drive prompt advance complex heavy unmemorable fast hurry rush satisfying feel obscure exceptional brisk rapid exciting why wait
  • 40. temps de réponse perçu performance speed enjoyable slow crawl boring snail stagnant urgent instant accelerate unexceptional yawn perception snap achievement unresponsive impatient delay better improve action pleasant pace moderate blah subdue drag apathetic prolong slack load sluggish sleepy quick promote swift cool maximum drive prompt advance late unexciting reduced lag complex heavy unmemorable fast hurry rush satisfying feel obscure exceptional brisk rapid exciting why wait Quelle est l’expérience utilisateur ?
  • 41. Dans l’oeil du cyclone • La perception et l’utilisabilité sont des mesures importantes • Plus pertinentes que le simple onunload - onload • La définitionest vague et change d’une page à l’utilisateur de ce qu’est le onload pour l’autre.
  • 42. #2 “80% of consequences come from 20% of causes” —Vilfredo Pareto
  • 45. L’Importance du Front-End Front-end = 95%
  • 46. L’Importance du Front-End Même ici, front-end = 88%
  • 48. Exemple et ça continue encore, et encore... en réalité c’est 7 à 8 fois plus long
  • 49. Pourquoi côté client ? TF1 1,8% AlloCiné 1,5% • La page HTML FaceBook 7,2% représente moins de Skyrock 1% 10% France Telecom 34,7% Free (portail) 1% Le Monde 0,7% • 90% offrent un meilleur Amazon France 25,1% ROI Google (résultats) 68,8% Yahoo! France 30,7% Daily Motion 8,5%
  • 50. Il y a encore un travail énorme dans le domaine de la performance.
  • 54. Cache vide / rempli 1 2 3 l’utilisateur l’utilisateur l’utilisateur demande demande d’autres demande de www.yahoo.com pages web nouveau www.yahoo.com
  • 55. Cache vide / rempli 1 2 dns lookup html image image dns lookup script 3 image image image image l’utilisateur user requests image image user re-requests demande other web pages image image www.yahoo.com www.yahoo.com script image image image image image image image image script dns lookup image image image image image dns lookup script script stylesheet image avec un cache vide 0 0.5 1 1.5 2 2.5 3
  • 56. Cache vide / rempli 1 2 dns lookup html image image dns lookup script 3 image image image image l’utilisateur user requests image image user re-requests demande other web pages image image www.yahoo.com www.yahoo.com script image image image image image image image image script dns lookup image image image image image dns lookup script script stylesheet image avec un cache vide 0 0.5 1 1.5 2 2.5 3
  • 57. Cache vide / rempli 1 2 3 l’utilisateur l’utilisateur l’utilisateur demande demande d’autres demande de www.yahoo.com pages web nouveau www.yahoo.com
  • 58. Cache vide / rempli 1 2 3 l’utilisateur l’utilisateur l’utilisateur demande demande d’autres demande de www.yahoo.com pages web nouveau www.yahoo.com
  • 59. Cache vide / rempli 1 2 3 l’utilisateur l’utilisateur l’utilisateur demande demande d’autres demande de www.yahoo.com pages web nouveau www.yahoo.com
  • 60. Pourquoi du cache ? Premier accès Second accès Le gain est évident, non ?
  • 61. Cache vide / rempli
  • 62. Cache vide / rempli vide = 2.4 secondes rempli = 0.9 seconde rempli = 83% moins de poids (octets) rempli = 90% moins de requetes HTTP.
  • 63. Cache - technique • Expires: Wed, 24 Oct 2018 21:32:59 GMT Cache-Control: public;max-age=315360000 • mod_expires sous Apache ExpiresDefault quot;access plus 1 month 15 days 2 hoursquot; ExpiresByType image/gif quot;modification plus 5 hours 3 minutesquot; • Tous les composants statiques
  • 64. Cache - mise à jour • Une URL = Une version (en cache) • Changer l’URL pour une nouvelle version • monscript-1.4.js • monscript.js?20081113T123559 monscript.js?<?= filemtime($a); ?>
  • 65. Cache - CDN • CDN - Content Delivery Network • Serveur proche du client • Latence faible • Cache automatique
  • 66. #3b (malheureusement, le cache ne fonctionne pas aussi bien qu’il pourrait)
  • 67. À quel point le cache bénéficie t-il à l’utilisateur ?
  • 68. À quel point le cache bénéficie t-il à l’utilisateur ? Q1: Quel % d’utilisateurs uniques voient la page avec un cache vide ? Q2: Quel % des pages sont vues avec un cache vide ?
  • 69. Tester le cache du navigateur Ajouter une nouvelle image sur vos pages : <img src=quot;image/blank.gifquot; height=quot;1quot; width=quot;1quot;/> }1 px avec ces entêtes HTTP dans la réponse : Expires: Thu, 15 Apr 2004 20:00:00 GMT Last-Modified: Wed, 28 Sep 2006 23:49:57 GMT
  • 70. Tester le cache du navigateur Ajouter une nouvelle image sur vos pages : <img src=quot;image/blank.gifquot; height=quot;1quot; width=quot;1quot;/> }1 px avec ces entêtes HTTP dans la réponse : Expires: Thu, 15 Apr 2004 20:00:00 GMT Last-Modified: Wed, 28 Sep 2006 23:49:57 GMT
  • 71. Tester le cache du navigateur Deux codes de réponse possibles ! 200 – Le navigateur n’a pas l’image en cache 304 – Le navigateur a l’image dans son cache mais doit vérifier la dernière date de mise à jour
  • 72. Tester le cache du navigateur Q1: Quel % # utilisateurs uniques avec au moins une réponse 200 d’utilisateurs uniques voient la # total d’utilisateurs uniques page avec un cache vide ? Q2: Quel % des # total de réponses 200 # de 200 + # de 304 pages sont vues avec un cache vide ? }1 px
  • 73. Résultats surprenants 1.00 0.75 0.50 0.25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 uu avec cache vide pv avec cache vide
  • 74. Résultats surprenants 1.00 0.75 0.50 0.25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 uu avec cache vide pv avec cache vide
  • 76. À emporter chez vous 1.Les utilisateurs avec un cache vide sont plus fréquents que vous ne le pensez. 2.En conséquence, optimisez et pour un cache rempli et pour un cache vide
  • 79. #4 Téléchargements parallèles
  • 80. Téléchargements parallèles Deux composants en parallèle par domaine GIF GIF GIF GIF GIF GIF d’après HTTP/1.1
  • 82. Téléchargements parallèles html component component Deux en parallèle component component component component component component component component 0 0.425 0.850 1.275 1.700 Quatre en parallèle Huit en parallèle
  • 83. Téléchargements parallèles html component component Deux en parallèle component component component component component component component component 0 0.425 0.850 1.275 1.700 html component component Quatre en parallèle component component component component component component component component 0 0.375 0.750 1.125 1.500 Huit en parallèle
  • 84. Téléchargements parallèles html component component Deux en parallèle component component component component component component component component 0 0.425 0.850 1.275 1.700 html component component Quatre en parallèle component component component component component component component component 0 0.375 0.750 1.125 1.500 html component component component component component Huit en parallèle component component component component component 0 0.375 0.750 1.125 1.500
  • 85. Optimiser les téléchargements parallèles temps de réponse (secondes) alias
  • 86. Optimiser les téléchargements parallèles 1.4 36 x 36 px (0.9 Kb) 116 x 61 px (3.4 Kb) 1.2 1.0 0.8 temps de réponse (secondes) 0.6 0.4 0.2 0 1 2 4 5 10 alias
  • 87. Optimiser les téléchargements parallèles 1.4 36 x 36 px (0.9 Kb) 116 x 61 px (3.4 Kb) average 1.2 1.0 0.8 temps de réponse (secondes) 0.6 0.4 0.2 0 1 2 4 5 10 alias
  • 88. Optimiser les téléchargements parallèles 1.4 36 x 36 px (0.9 Kb) 116 x 61 px (3.4 Kb) average 1.2 1.0 0.8 temps de réponse (secondes) 0.6 0.4 0.2 0 1 2 4 5 10 règle d’or : utiliser au moins 2 domaines, pas plus de 4
  • 89. À emporter chez vous • attention au gâchis de temps CPU • la durée d’une requête DNS varie suivant votre FAI et votre localisation géographique • le nom de domaine peut ne pas être en cache
  • 92. Résumé What the 80/20 Rule Tells Us about Reducing HTTP Requests ! http://yuiblog.com/blog/2006/11/28/performance-research-part-1/ Browser Cache Usage – Exposed! ! http://yuiblog.com/blog/2007/01/04/performance-research-part-2/ When the Cookie Crumbles ! http://yuiblog.com/blog/2007/03/01/performance-research-part-3/ Maximizing Parallel Downloads in the Carpool Lane ! http://yuiblog.com/blog/2007/04/11/performance-research-part-4/
  • 93. #5 Optimiser les images et les sprites
  • 94. CSS Sprites CSS: … HTML: http://alistapart.com/articles/sprites
  • 95. CSS Sprites CSS: … HTML: L’image combinée est plus légère http://alistapart.com/articles/sprites
  • 96. Pourquoi est-ce que ça fonctionne ? Les balises HTML sont comme des fenêtres.
  • 97. Pourquoi est-ce que ça fonctionne ? Les balises HTML sont comme des fenêtres.
  • 98. Pourquoi est-ce que ça fonctionne ? Les balises HTML sont comme des fenêtres.
  • 99. Pourquoi est-ce que ça fonctionne ? Les balises HTML sont comme des fenêtres.
  • 102. CSS Sprites background-image: url(sprites.png) ; background-position: -100px -200px; background-repeat: no-repeat ; width: 15px ; height: 15px ; On évite des dizaines de requêtes HTTP
  • 103. Optimiser les sprites 1. Combien de pages a votre site ? 2. Votre site est-il modulaire ? (il devrait !) 3. Combien de temps votre équipe peut passer sur la maintenance ?
  • 104. Éviter les filtres Pourquoi utiliser AlphaImageLoader ? IE6 ne supporte pas la transparence partielle nativement. Le filtre force ce support.
  • 105. Problèmes avec les filtres • Bloque le rendu, gèle le navigateur • Plus grosse consomation mémoire • Par élément, pas par image !
  • 106. Solution: éviter AlphaImageLoader 1. MIEUX: à éviter complètement, utiliser PNG8 qui dégrade correctement dans IE < 7 2. Sinon: Utiliser un hack CSS avec l’underscore pour que le filtre ne s’applique que à IE < 7 #elem { background: url(some.png); _background: none; _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader (src='some.png', sizingMethod='crop'); }
  • 107. Amélioration progressive de PNG8 Créer l’image avec transparence binaire. Dans Fireworks, ajouter quelques pixels en semi-transparence.
  • 108. IE6 Firefox Opera IE7+ Safari Les bons navigateurs ont + Et les dinausores ont un cas par défaut acceptable
  • 109. Données de tests Retirer Alpha Image Loader 100ms Yahoo! search
  • 111. Deux problèmes distincts Design Qualité versus Optimisation Ingénierie
  • 112. Réduire les images Étape 1: Qualité, Le graphiste choisit la qualité (par exemple via “save for the web”) Étape 2: Compression sans perte pour retirer les dernier octets de l’image.
  • 115. Images, qui s’en préoccupe ? Top 10 sites web 45.6% du poids des pages vient des images.
  • 116. .94
  • 118. erreur #1 Utiliser GIF quand PNG est plus léger 20.42%
  • 119. erreur #2 Ne pas passer les images par PNGcrush 16.05%
  • 120. erreur #3 Ne pas retirer les méta données JPEG 11.85%
  • 121. erreur #4 Utiliser des PNG pleines couleurs au lieu de PNG8
  • 122. erreur #5 Utiliser Alpha Image Loader 100ms yahoo search
  • 123. erreur #6 Envoyer les images générées dynamiquement “telles quelles” 38-55% google charts api
  • 124. erreur #7 Ne pas combiner les images
  • 126. JPEG Tran Outils excellents, tellement de possibilités PngOptimizer OptiPNG
  • 127. UN OUTIL. BEAUCOUP D’ALGORITHMES. Smush it optimise automatiquement les images en utilisant le meilleur outil open source
  • 131. IBM Page Detailer Packet sniffer. Windows seulement (IE, FF, ...). Démo gratuite, licence à $300 http://alphaworks.ibm.com/tech/ pagedetailer
  • 133. YSlow Apperçus et analyses de performance. Gratuit.
  • 134. Gomez Mesures tierces. Comparaison de concurrence.
  • 135. HTTPfox ??
  • 136. Webpagetest.org Waterfall of your page load performance as well as a comparison against an optimization checklist.
  • 137. smush.it L’optimisation des images sans perte de qualité
  • 139. Équilibrer le budget performance.
  • 140. Trois étapes • Mesurer la performance et les tendances • Estimer l'impact en performance de toutes les nouvelles fonctionnalités • Estimer l’impact de toutes les améliorations de performance
  • 141. Estimer ? comment ? Traquer : • Poids de la page * • Temps de réponse • Requêtes HTTP * Pour les sites plus complexes, traquer le poids de la page par type de composants : css, js, images, flash
  • 143. Vérifier les attentes. • L’impact de chaque fonctionnalité était-il ce que vous aviez estimé ? • Est-ce que les optimisations ont amélioré la situation autant que vous le pensiez ?
  • 144. Allouer du temps, équilibrer le budget améliorations de performance vs nouvelles fonctionnalités 124
  • 146. High Performance Web Sites Connaissances fondamentales pour les ingénieur web front-end par Steve Souders, avec des recherches de Yahoo!
  • 147. Exceptional Performance sur YDN http://developer.yahoo.com/ performance
  • 148. Articles sur le YUIBlog http://yuiblog.com/blog/ category/performance
  • 149. Liens book: http://www.oreilly.com/catalog/9780596514211/ examples: http://stevesouders.com/examples/ image maps: http://www.w3.org/TR/html401/struct/objects.html#h-13.6 CSS sprites: http://alistapart.com/articles/sprites inline images: http://tools.ietf.org/html/rfc2397 jsmin: http://crockford.com/javascript/jsmin dojo compressor: http://dojotoolkit.org/docs/shrinksafe HTTP status codes: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html IBM Page Detailer: http://alphaworks.ibm.com/tech/pagedetailer Fasterfox: http://fasterfox.mozdev.org/ LiveHTTPHeaders: http://livehttpheaders.mozdev.org/ Firebug: http://getfirebug.com/ YUIBlog: http://yuiblog.com/blog/2006/11/28/performance-research-part-1/ http://yuiblog.com/blog/2007/01/04/performance-research-part-2/ http://yuiblog.com/blog/2007/03/01/performance-research-part-3/ http://yuiblog.com/blog/2007/04/11/performance-research-part-4/ YDN: http://developer.yahoo.net/blog/archives/2007/03/high_performanc.html http://developer.yahoo.net/blog/archives/2007/04/rule_1_make_few.html
  • 150. Images CC utilisées “Zipper Pocket” by jogales: http://www.flickr.com/photos/jogales/11519576/ “Need for Speed” by Amnemona: http://www.flickr.com/photos/marinacvinhal/379111290/ “I wonder what flavour it is?” by blather: http://www.flickr.com/photos/deadlyphoto/411770353/ “takeout boxes from Grand Shanghai” by massdistraction: http://www.flickr.com/photos/sharynmorrow/11263821/ “takeout” by dotpolka : http://www.flickr.com/photos/dotpolka/249129144/ “ice cream cone melting/rome” by Megandavid : http://www.flickr.com/photos/megandavid/189332042/ “nikon em bokeh” by dsevilla: http://www.flickr.com/photos/dsevilla/249202834/ “maybe” by Tal Bright: http://www.flickr.com/photos/bright/118197469/ “how do they do that” by Fort Photo: http://www.flickr.com/photos/fortphoto/388825145/ “Gorgeous iceberg 7 [Le Toit du Monde]” by Adventure Addict http://www.flickr.com/photos/adventureaddict/ 35290307/ “molasses-spice cookies” ilmungo: http://www.flickr.com/photos/ilmungo/65345233/ “Driving is fun” by Ben McLeod: http://www.flickr.com/photos/benmcleod/59948935/ “Dozen eggs” by aeA: http://www.flickr.com/photos/raeallen/96238870/ “Max speed 15kmh” by xxxtoff: http://www.flickr.com/photos/xxxtoff/219781763/ “Stairway to heaven” ognita: http://www.flickr.com/photos/ognita/503915547/ “flaps up” by http://www.flickr.com/photos/jurvetson/74274113/ “Fast Cat” by http://www.flickr.com/photos/raylopez/708023176/ “blues” by http://www.flickr.com/photos/pankaj/1877184829/
  • 151. Images CC utilisées “Vintage Kodak Studio Scales Set and Bottle” by http://www.flickr.com/photos/captkodak/ 272746539/ “Assumtion, Minissota” by http://www.flickr.com/photos/afiler/226337382/ Merci encore à Nate Koechley (Yahoo!) et à l’équipe YUI
  • 152. Notre atelier demain • Côté pratique • Démo des outils • Apprendre faire une évaluation de performance • Comment convaincre le business a participer • Où se trouve plus d’info
  • 154. Éric Daspet Nicole Sulivan http://eric.daspet.name/ nicole@stubbornella.org www.stubbornella.org http://performance.survol.fr/ “stubbornella” sur le web (livre en préparation) http://smushit.com/