- General Aux quatre coins de la performance | Cactus

Aux quatre coins de la performance

Aux quatre coins de la performance

J'évolue dans un environnement de grosse entreprise, plein de consultants et de managers. Il faut trouver des formules choc et des raccourcis assez synthétiques, des systèmes qui permettent de comprendre des systèmes complexes (j'ai plus de 30 applications dans mon périmètre).

Je vais donc résumer la performance selon un carré, ce qui me permettra de montrer o๠nous sommes bons et mauvais, o๠nous avons mené des actions. Bien entendu chaque coin du carré peut avoir lui aussi des subdivisions , mais je n'en parlerai qu'avec les intervenants d'ingénierie.

Cela résumera la performance à quatre facteurs. A cinq, on dépasse la capacité de mémorisation.

C'et pour vous aussi une bonne manière de vous souvenir de tout ce qui impacte votre performance et de synthétiser vos problèmes et vos actions.

\1. La page html

C'est La Source. Impossible de parler d'affichage d'une page web sans parler de la page web dans laquelle tout commence.

C'est aussi souvent là que se concentrent tous les problèmes. Parce que qui dit page web dit redirections pour y accéder, bases de données à interroger, serveurs surchargés.

Pas d'échappatoire : si votre page est lente, votre carré n'a qu'une petite surface.

Par contre, pour agir sur ce problème, il faudra changer profondément quelque chose : votre architecture, votre matériel ou votre développeur. Je vous conseille donc de ne pas vous engager dans cette voie.

\2. Le réseau

Le web, c'est du contenu transporté dans des tuyaux. Si le contenu est important, le tuyau l'est plus encore.

C'est en effet dans le tuyau qu'est la latence la plus inéluctable : regardez le temps qu'il faut pour aller jusqu'à un serveur distant, comme celui de cnet.

Plus le tuyau est long, plus il est lent et plus cela aura un impact important sur votre perfomance générale. Et ce la sera aggravé par le quatrième cxoin de la performance.

\3. Le navigateur

Il y a un peu d'intelligence et d'interactivité dans le web de 2007. Les pages se constituent en utilisant des attributs qui nécessitent une bonne dose de réflexion, et sont dynamiques coté client: css javascripts et modèle dom rendent la page plus dynamique mais aussi plus lente.

Il y a aussi malheureusement des fonctionnements qui ne sont pas dynamiques mais impliquent une charge supplémentaire sur le serveur : les requêtes https. Pour respecter la couche de transport, les requêtes doivent être encryptées au même titre que les réponses renvoyées par le serveur.

La manière dont fonctionnent les différents navigateurs est un opérande de la performance. Un navigateur comme Safari qui charge tout le contenu css en parallèle a in fine plus de performance qu'un qui les chargerait l'un après l'autre.

\4. Le poids

Le coin qui ferme le carré est celui auquel tous les utilisateurs pensent en premier quand ils doivent apparaitre quelque chose sur le web en un temps donné. Je me rappelle de conversations épiques avec les responsables d'un site qui allait passer à une taille adaptée à du 1024x768 : la page serait plus grande donc forcément, ce serait plus lourd et plus lent.

Le poids est important, mais parfois plus que le poids, c'est souvent la quantité qui importe. Essayez de faire transiter un objet de 100 Ko et 100 objets de 1 Ko : vous n'obtiendrez pas le même résultat.

Mettez le nombre d'éléments et une lenteur réseau dans la même balance, et vous verrez que les deux se surchargent et font effondrer votre performance.

Avec ces 4 facteurs, et ces quatres axes de jugement de la performance, je peux tenir facilement une heure sur le sujet de la performance de notre site. Expliquer comment ces axes sont sous la responsabilité de différentes personnes (développeur, ingénieur réseau, graphiste/intégrateur html, responsable de contenu), expliquer comment deux erreurs se combinent pour rendre la performance dramatique. Essayez vous aussi de juger de vos pages avec ces éléments à l'esprit.

Publié le 2 Oct 2007
Écrit par Cyril Godefroy