Sommaire: Gestion du cache dans les applications Asp.Net
Introduction
Présentation
Utilisation Cache Données
Présentation Cache Données
Manipulation des Données
L’objet Cache
Ajout d’une donnée dans le contexte de cache
Modification d’une donnée mise en cache
Suppression d’une donnée du contexte de cache
Un exemple concret de la mise de données en cache
Les dépendances de cache
Présentation
Les dépendances de cache vers un fichier
Présentation
Mise en œuvre
Les dépendances de cache vers une table vers une base de données SQL Server
Présentation
Mise en œuvre
Mise en cache des pages et des parties de page
Présentation
Mise en cache de page
Utilisation de la directive OutputCache
Utilisation de la classe HttpCachePolicy
Mise en page de parties de pages
Utilisation du contrôle ASP .NET Substitution
Conclusion
Extrait du cours gestion du cache dans les applications Asp.Net
1 Introduction
1.1 Présentation
Une bonne gestion de cache dans les applications ASP .NET, permet d’améliorer nettement les performances d’exécution des pages Web sur le serveur. Mais toute donnée mise en cache est une copie d’une autre donnée. Alors des effets de bord peuvent apparaître, comme les problèmes liés à la fraicheur des données.
Dans ce cours, nous vous proposons alors d’étudier les différentes fonctionnalités de gestion du cache, que propose la technologie ASP.NET :
-Mise en cache de données.
– Utilisation des dépendances de cache, vers un fichier et une table d’une base de données SQL Server.
-Mise en cache des pages ou parties de pages.
2 Utilisation du cache de données
2.1 Présentation du cache de données
Le cache de données est un contexte de données, situé côté serveur, qui est partagé entre tous les utilisateurs. Autrement dit, si un utilisateur ajoute ou modifie une donnée dans le contexte de cache, alors tout autre utilisateur peut lire cette donnée, et même la modifier. Il est possible d’ajouter tout type d’objet. Charge à l’utilisateur de convertir la donnée lue du cache, pour obtenir une donnée fortement typée.
Quelle est alors la différence entre le contexte d’application et le contexte de cache ? Si on s’en tient à la présentation du cache de données effectuée ci‐dessus, on ne peut voir la différence.
De nettes différences existent pourtant et concernant les données mises en cache :
– Leur durée de vie est limitée. Il est possible de spécifier deux durées de vie :
* Une durée de vie absolue : durée de vie au bout de laquelle la variable de cache est automatiquement détruite. Le point d’origine temporel est définit lors de l’ajout de la donnée dans le cache.
* Une durée de vie glissante : durée de vie au bout de laquelle la variable de cache est automatiquement détruite. Le point d’origine temporel est définit lors du dernier accès à la donnée dans le cache, part n’importe quel utilisateur.
2.2 Manipulation des données en cache
2.2.1 L’objet Cache
L’objet intrinsèque Cache permet de gérer le cache de données dans les applications ASP .NET.
2.2.2 Ajout d’une donnée dans le contexte de cache
Il existe trois méthodes permettant d’ajouter une donnée dans le contexte de cache, créant ainsi des variables de cache :
-En appliquant la méthode Add sur l’objet Cache. Cette méthode retourne l’objet mis en cache. Toutefois, si cette variable de cache existe déjà, une exception est levée. Voici la signature de cette méthode :
2.2.3 Modification d’une donnée mise en cache
Pour modifier une donnée dans le cache, il suffit d’utiliser l’indexeur pour accéder et valoriser la variable de cache.
2.2.4 Suppression d’une donnée du contexte de cache
Pour supprimer la donnée du cache, utiliser la méthode Remove sur l’objet Cache :
Remarque: il est interdit de valoriser à null (en C#) ou Nothing (en VB .NET) la variable de cache pour la détruire. Si vous écrivez cette instruction, alors une exception de type System.ArgumentNullException sera levée.
' VB .NET Cache.Remove("ListeClients") // C# Cache.Remove("ListeClients"); ' VB .NET Cache("ListeClients") = oNewListeClients // C# Cache["ListeClients"] = oNewListeClients;
2.3 Un exemple concret de la mise de données en cache
Nous vous proposons d’étudier son utilisation au travers d’un exemple concret : le chargement et l’affichage du contenu d’un fichier.
Pour simuler le chargement d’un fichier de taille important, on stoppe le thread courant (chargé de l’exécution de la page ASP.NET) pendant 3 secondes. Ainsi, avant l’instruction du chargement du contenu du fichier, on ajoute la ligne indiquée en gras ci‐dessous : Voici l’interface graphique de l’application :
………
Gestion du cache dans les applications Asp.Net (611.88 KO) (Cours PDF)