Amélioration d’une application lente
Cette section examine une partie d’un exemple d’application qui fonctionne très lentement sur le réseau. Tout au long de cette section, des modifications sont apportées au code initial pour améliorer ses performances.
L’exemple fictif est la partie mise à jour d’un jeu appelé Life. L’application est écrite de telle sorte que le client effectue les calculs pour les mises à jour et les envoie au serveur. Le serveur affiche ensuite le champ Life résultant. La sortie du client est un flux d’octets, regroupés en trois (triplets), chaque triplet représentant une mise à jour de cellule. Les octets du triplet représentent respectivement la ligne, la colonne et la valeur de la cellule.
Cet exemple commence comme une application intentionnellement peu performante, qui fournit la base de référence à partir de laquelle les améliorations des performances peuvent être illustrées. À partir de là, le code est amélioré trois fois pour résoudre divers problèmes qui affectent les performances. Ces exemples doivent être lus dans l’ordre, car chaque itération s’améliore par rapport à la version précédente.
Le code de base et les révisions qui améliorent ce code sont les suivants :
- La version de référence : une application très peu performante
- Révision 1 : Nettoyage de l’évidence
- Révision 2 : Refonte pour moins de connexions
- Révision 3 : Envoi de blocs compressés
- Améliorations futures
Avertissement
Les premiers exemples de l’application fournissent des performances intentionnellement médiocres, afin d’illustrer les améliorations de performances possibles avec les modifications apportées au code. N’utilisez pas ces exemples de code dans votre application ; elles sont à des fins d’illustration uniquement.
Rubriques connexes