Développer pour In-Role Cache Azure
Important
Microsoft recommande tous les nouveaux développements à l’aide du Cache Redis Azure. Pour obtenir de la documentation et des conseils actuels sur le choix d’une offre Azure Cache, consultez Quelle offre Azure Cache est adaptée à moi ?
Microsoft Azure Cache fournit un ensemble d’API pour ajouter, mettre à jour et supprimer des éléments d’un cache. L’utilisation des classes et des méthodes dans l’espace de noms Microsoft.ApplicationServer.Caching est un moyen direct d’interagir avec un cache Azure. Alors que l’utilisation de l’un des fournisseurs ASP.NET est un moyen indirect d’utiliser un cache Azure. Les rubriques de cette section couvrent l’utilisation directe par programmation de la mise en cache. Pour plus d’informations sur les fournisseurs de ASP.NET pour la mise en cache, consultez ASP.NET 4 fournisseurs de cache pour Azure In-Role Cache.
Modèle de programmation
Le modèle de programmation de mise en cache est conçu pour le modèle de programmation de mise en cache de côté. Si vos données ne sont pas situées dans le cache, votre application, et non le cache distribué, doit recharger les données dans le cache à partir de la source de données d'origine.
Éléments à prendre en compte concernant le mode de programmation de type cache-aside
Concevez un code d'application fonctionnant indépendamment du cache, afin que l'application continue à fonctionner si les données mises en cache ne sont pas disponibles. Comme les données du cache ne persistent pas de manière durable, il se peut qu'elles soient indisponibles. Par exemple, si le serveur qui contient les données est redémarré, les éléments mis en cache en mémoire sont perdus. Une demande d'élément qui n'existe pas dans le cache est appelée absence dans le cache.
Lors de l’utilisation de la fonctionnalité de haute disponibilité du cache In-Role, les copies de sauvegarde d’éléments mis en cache permettent de se protéger contre les défaillances de l’ordinateur et des processus sur un cluster de cache en cours d’exécution. Toutefois, si tous les ordinateurs sont redémarrés, même la haute disponibilité n'offre pas de durabilité. Les éléments qui nécessitent de la persistance doivent utiliser une base de données ou d'autres techniques de stockage persistant. La mise en cache fournit alors un mécanisme qui permet d'améliorer les performances et l'extensibilité.
Il existe de nombreuses autres raisons pour lesquelles votre code peut rencontrer une erreur de cache. Par exemple, l’élément de cache a peut-être expiré ou a été supprimé en fonction des stratégies d’expiration et d’éviction normales. Quelle que soit la raison, le code de l'application doit être en mesure d'accéder à la source de données d'origine pour reconstituer l'élément dans le cache.