Migration d'une mise en cache AppFabric vers Azure In-Role Cache

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 ?

Cette rubrique explique comment migrer de Microsoft AppFabric 1.1 pour Windows Server vers Microsoft Azure Cache. Ce type de migration de mise en cache peut se produire lorsque vous déplacez une application locale vers Azure.

AppFabric prend en charge les clusters de cache locaux qui utilisent vos serveurs et votre infrastructure réseau. Le déplacement vers Azure est facilité par le fait que la plupart des fonctionnalités et du modèle de programmation d’AppFabric sont partagés avec Microsoft Azure Cache.

Planification de la migration

Avant de migrer votre application avec cache vers le cloud, passez tout d’abord en revue les différences entre AppFabric et Microsoft Azure Cache. Si vous avez besoin d’une fonctionnalité, telle que l’écriture directe, qui n’est pas disponible dans Microsoft Azure Cache, vous devez reconcevoir cette partie de votre solution afin de passer correctement à Azure.

Analyse du cluster de cache d'AppFabric

Tous les caches et leurs paramètres pertinents doivent être recréés sur un rôle Azure avec le cache. La première étape consiste à analyser le cluster de cache d'AppFabric pour comprendre la configuration locale actuelle.

  1. Sur le cluster de cache d'AppFabric, ouvrez une invite de commandes Windows PowerShell pour l'administration de la mise en cache.

  2. Exécutez la commande Get-Cache sans aucun paramètre. Celle-ci permet de répertorier les caches nommés.

  3. Pour chaque cache répertorié, exécutez la commande Get-CacheConfig . Passez le nom du cache comme argument de cette commande. Enregistrez les paramètres de configuration pour chaque cache. Voici un exemple de cette sortie.

    PS C:\Windows\system32> Get-CacheConfig TestCache
    
    CacheName                : TestCache
    TimeToLive               : 20 mins
    CacheType                : Partitioned
    Secondaries              : 0
    MinSecondaries           : 0
    IsExpirable              : True
    EvictionType             : None
    NotificationsEnabled     : True
    WriteBehindEnabled       : False
    WriteBehindInterval      : 300
    WriteBehindRetryInterval : 60
    WriteBehindRetryCount    : -1
    ReadThroughEnabled       : False
    ProviderType             :
    ProviderSettings         : {}
    
  4. Exécutez la commande Get-CacheHost pour afficher la liste des hôtes de cache dans le cluster de cache.

  5. Pour chaque hôte de cache, exécutez la commande Get-CacheHostConfig . Passez les arguments requis, le nom de l'hôte de cache et le port de mise en cache (généralement 22233). Enregistrez le paramètre Size pour chaque hôte de cache.

  6. Ajoutez les valeurs Size pour tous les hôtes de cache afin de déterminer la taille globale du cluster de cache.

Nouvelle création du cluster de cache dans un projet de service cloud

Avertissement

Il n’est pas pris en charge pour installer AppFabric et le Kit de développement logiciel (SDK) Azure sur la même machine de développement. Ces étapes supposent que vous utilisez des machines distinctes ou que vous désinstallez complètement AppFabric avant d’installer le Kit de développement logiciel (SDK) Azure.

Dans Visual Studio créer un service cloud ou ouvrir un service cloud existant. Ajoutez un rôle de travail de cache au service cloud. Pour plus d’informations, consultez Hébergement d’Azure In-Role Cache sur des rôles dédiés. Ce rôle fournit des fonctionnalités de mise en cache pour l’ensemble du service cloud. La procédure suivante décrit la recréation des caches nommés.

  1. Dans Visual Studio, accédez à la fenêtre Explorateur de solutions.

  2. Dans le dossier Rôles , double-cliquez sur le rôle qui héberge la mise en cache.

  3. Dans la boîte de dialogue des propriétés du rôle, sélectionnez l'onglet Mise en cache.

  4. Sous Paramètres du cache nommé, commencez par modifier le cache par défaut afin d'utiliser les paramètres du cache par défaut dans le cluster de cache d'AppFabric. Utilisez ensuite le lien Ajouter le nom de cache pour ajouter les autres caches requis par votre solution. La capture d'écran suivante montre plusieurs caches nommés configurés.

    Caching Properties for Named Caches

  5. Utilisez le compte de stockage pour créer ou réutiliser un compte de stockage. Ce compte doit être utilisé dans le champ du compte de stockage sous l'onglet Mise en cache pour les déploiements vers le cloud.

Le tableau suivant met en corrélation la sortie de Get-CacheConfig aux paramètres de la fenêtre de mise en cache.

Paramètre Get-CacheConfig Paramètre de fenêtre de mise en cache

CacheName

Nom

TimeToLive

Durée de vie (min)

Secondaries (0, 1)

Haute disponibilité (0 = désactivé, 1 = activé)

IsExpirable (True, False)

Type d'expiration (True = absolue, False = aucune)

EvictionType (Aucune, LRU)

Stratégie d'éviction (Aucune, LRU)

NotificationsEnabled (True, False)

Notifications (True = activé, False = désactivé)

Notes

Tous les paramètres de mise en cache AppFabric qui ne sont pas répertoriés ici ne sont pas pris en charge dans Microsoft Azure Cache.

La taille du cluster de cache peut être configurée en identifiant la relation entre la taille de machine virtuelle et le nombre d'instances en cours d'exécution de ce rôle. Pour plus d’informations, consultez Considérations relatives à la planification de la capacité pour azure In-Role Cache.

Migration du code d'application

La dernière étape consiste à déplacer le code d'application vers le projet de service cloud. Notez que l'espace de noms et la plupart des API restent identiques. Les étapes suivantes fournissent des instructions de migration pour chaque projet qui nécessite la mise en cache.

  1. Dans le projet Visual Studio, supprimez d’abord les références aux assemblys AppFabric.

  2. Ensuite, sauvegardez les sections dataCacheClient du fichier web.config ou app.config.

  3. Supprimez dataCacheClient et d’autres sections de mise en cache du fichier web.config ou app.config.

  4. Ensuite, préparez le projet à utiliser Microsoft Azure Cache. Pour plus d’informations, consultez How to: Prepare Visual Studio to Use Azure In-Role Cache.

  5. Ensuite, ajoutez manuellement les sections dataCacheClient supprimées dans le fichier web.config ou app.config. Vous devez apporter les modifications suivantes à ces sections :

    • Ajoutez un élément de découverte automatique à chaque section. L’attribut d’identificateur doit référencer le nom du rôle qui héberge la mise en cache.

      <autoDiscover isEnabled="true" identifier="[cache cluster role name]" />
      
    • Supprimez tous les hôtes, hôtes et éléments securityProperties. Ces éléments sont inutiles et non pris en charge dans Microsoft Azure Cache.

Voir aussi

Concepts

Migration d'une mise en cache partagé Azure vers In-Role Cache