Très bien, j'ai déployé AppFabric avec succès, et tout fonctionnait bien jusqu'à ce que nous commencions à avoir une exception intermittente sur le site web :
ErrorCode < ERRCA0017 >:SubStatus < ES0007 >:Il y a une défaillance temporaire. Veuillez réessayer plus tard. (La requête a échoué parce que le serveur est en état d'étranglement).
J'ai d'abord pensé que le serveur manquait de mémoire (état d'étranglement), mais j'ai finalement conclu que ce n'était pas le problème. Dans le journal des événements, j'ai constaté que DistributedCacheService.exe se plantait de temps en temps, et cela m'a conduit à une méthode simple pour reproduire l'erreur dans mon environnement de développement local :
- Démarrez le site web, ajoutez quelques éléments dans le cache.
- Redémarrez "AppFabric Caching Service".
- ... et je commence à obtenir l'erreur.
Si je fais un Get-CacheClusterHealth
AVANT de redémarrer le service, cela ressemble à quelque chose comme ceci :
NamedCache = MyCacheName
Healthy = 100,00
UnderReconfiguration = 0,00
NotPrimary = 0,00
NoWriteQuorum = 0,00
Throttled = 0,00
Après le redémarrage :
Unallocated named cache fractions
---------------------------------
NamedCache = MyCacheName
Unallocated fraction = 100,00
Alors que j'obtiens ce résultat avec Get-CacheClusterHealth
le site échoue. D'après ce que je peux dire, il se corrige de lui-même après un certain temps (10+ minutes).
Y a-t-il un moyen de remettre AppFabric sur pied plus rapidement ?