L'optimisation du code et des temps de réponse est un sujet rarement évoqué dans le développement web.
L'optimisation est souvent réservée aux applications professionnelles
sensibles. Pourtant tout webmaster est concerné directement par cette
question.
Le développement des accès haut-débit depuis près de 2 ans a 2 conséquences majeures :
- l'augmentation du nombre d'internautes et donc de visiteurs potentiels
- l'augmentation du temps moyen de connexion et donc du nombre de pages vues
Les hébergeurs ont pour la plupart déjà fait profiter leurs clients
d'augmentation de la bande passante.
Par exemple chez OVH, la bande passante fournie avec les serveurs
dédiées a pratiquement été multipliée par 10 en 2004, sans supplément
de prix.
La bande passante qui était encore récemment un point critique ne pose
plus réellement de problème, sauf pour certaines applications
spécifiques de téléchargement ou de radio en ligne par exemple.
En revanche, la puissance des serveurs n'a pas suivi le même rythme de
croissance que l'augmentation de la population d'internautes : on
considère généralement que la puissance des processeurs double tous les
18 mois selon la loi de Moore qui prédit "seulement" que "le nombre de transistors par cicuit de même taille va doubler tous les 18 mois".
C'est bien la puissance CPU qui est devenu le facteur limitant aujourd'hui.
Les hébergeurs sont très attentifs à la consommation CPU des sites sur
hébergements mutualisés. En cas de dépassement des limites, l'accès
peut être coupé.
Pour un site sur serveur dédié, l'optimisation du code permet de
proposer à ses visiteurs un site rapide et fiable et d'éviter la
surenchère technologique et les coûts associés à l'augmentation des
capacités matérielles.
Une optimisation réussie apporte pour vos visiteurs un plus grand
confort de navigation et pour vous une meilleure maîtrise des coûts
d'hébergement et surtout une plus grande sérénité par rapport aux
risques de plantages du site.
Nous allons voir dans ce tutorial comment mesurer les performances d'un
site et les différents moyens d'optimiser les temps de traitement coté
SQL, PHP et configuration.
Je n'ai pas la prétention d'être exhaustif dans ces quelques pages. Je
donne simplement quelques solutions que j'ai mises en application
moi-même avec un certain succès au niveau PHP, MySQL et Apache.
N'hésitez pas à me signaler les éventuelles erreurs et vos solutions d'optimisation.
Voici le sommaire de cet article (les prochaines parties suivent bientôt).
1 - Mesurer les performances
Etape indispensable pour optimiser : être capable de faire l'état des lieux et de mesurer les améliorations.
2 - Optimiser MySQL
Le moteur SQL est certainement l'élément qui a le plus fort potentiel d'optimisation.
3 - Utiliser le cache MySQL
A partir de la version 4 de MySQL, une gestion de cache ouvre de nouvelles possibilités.
4 - Utiliser les caches fichiers
Les principes du cache et une solution détaillée avec Cache Lite.
5 - Optimiser le serveur
Il existe de nombreuses astuces efficaces pour accélérer les traitements sur le serveur.
Aucun commentaire:
Enregistrer un commentaire