Configuration des délais d'expiration du client de cache (mise en cache de Windows Server AppFabric)

Les fonctionnalités de mise en cache de Windows Server AppFabric permettent de configurer la longueur des délais d'expiration de client de cache. Vous pouvez contrôler le temps d'attente d'une réponse du cluster de cache. Cette rubrique couvre deux types de délais d'expiration : délais d'expiration d'ouverture de canal et délais d'expiration de demande.

Certaines applications obtiennent des avantages en termes de performance en définissant des délais d'expiration courts, puis en gérant de façon appropriée les erreurs de délais d'expiration. Pour d'autres applications, il peut être préférable de définir des délais d'expiration relativement longs afin de réduire la fréquence de ces erreurs.

Les délais d'expiration dont il est question ici ne s'appliquent pas à la connexion initiale au cluster de cache. Celle-ci survient lorsqu'un objet DataCacheFactory est créé. Lors de la connexion, le système tente de communiquer avec le cluster via un ou plusieurs des serveurs spécifiés dans la propriété Servers ou l'élément hosts du fichier de configuration de l'application. Les problèmes réseau ou de cluster qui surviennent pendant la communication avec ces serveurs peuvent retarder l'établissement de la connexion initiale. Pour réduire ce délai, créez l'objet DataCacheFactory dans un thread secondaire. Selon le modèle de programmation, l'application doit fonctionner sans le cache, à l'aide des données sources, jusqu'à l'établissement de la connexion avec le cluster de cache.

ChannelOpenTimeout

En cas de dépassement d'un délai d'expiration d'ouverture de canal, une exception DataCacheException est générée avec le code d'erreur ErrorCode défini sur RetryLater. Le paramètre de configuration ChannelOpenTimeout contrôle le délai pendant lequel le client de cache attend pour établir une connexion réseau avec le serveur. Vous pouvez décider de définir ce délai d'expiration sur 0 pour que toute erreur soit immédiatement renvoyée au client.

Pour modifier ce paramètre par programme, configurez la propriété ChannelOpenTimeout de l'objet DataCacheFactoryConfiguration.

Pour contrôler ce paramètre avec un fichier de configuration de l'application, spécifiez le délai d'expiration en millisecondes à l'aide de l'attribut channelOpenTimeout pour l'élément dataCacheClient.

RequestTimeout

En cas de dépassement d'un délai d'expiration de demande, une exception DataCacheException est générée avec le code d'erreur ErrorCode défini sur Timeout. Le paramètre de configuration RequestTimeout contrôle le délai pendant lequel le client de cache attend avant de recevoir une réponse du serveur à partir d'un appel API spécifique. Par exemple, si vous avez appelé la méthode Get pour extraire un objet du cache, le délai d'expiration de demande détermine le délai pendant lequel le client de cache attend une réponse avant de générer une exception. À la différence du paramètre ChannelOpenTimeout, vous ne devez pas définir RequestTimeout sur 0, car cela entraînerai une erreur de délai d'expiration pour chaque appel au serveur.

Pour modifier ce paramètre par programme, configurez la propriété RequestTimeout de l'objet DataCacheFactoryConfiguration.

Pour contrôler ce paramètre avec un fichier de configuration de l'application, spécifiez le délai d'expiration en millisecondes à l'aide de l'attribut requestTimeout pour l'élément dataCacheClient.

Voir aussi

Concepts

Vue d'ensemble de la gestion des exceptions (mise en cache de Windows Server AppFabric)
Exceptions courantes (mise en cache de Windows Server AppFabric)

  2011-12-05