J'ai 2 serveurs miroir avec un équilibreur de charge. Je voudrais savoir les avantages et les inconvénients de coller avec le cache de l'application par rapport à quelque chose comme memcache? Je m'intéresse beaucoup aux différentes solutions et surtout aux types d'erreurs que je pourrais rencontrer ou aux limitations en ne les synchronisant pas. Pour commencer la discussion, je risquerais que l'utilisation du cache ASP.NET soit plus rapide et plus simple.Problèmes potentiels liés à l'utilisation du cache d'application ASP.NET sur un miroir?
Répondre
Il est préférable de abstrait la mise en cache dans une interface, implémenter l'interface de plusieurs façons et tester les différentes implémentations.
Comme dans beaucoup de cas, il s'agit d'examiner les données et de savoir combien elles sont partagées entre différents utilisateurs.
Le cache ASP.NET ne serait pas nécessairement plus rapide ou plus simple. Cela dépend de combien vous mettez en cache et si les serveurs Web ont les ressources pour le gérer. Dans la plupart des applications de taille raisonnable, la réponse est souvent négative. Le principal inconvénient de ne pas synchroniser les serveurs de cache serait que dans un environnement à charge équilibrée, les demandes suivantes pour les mêmes données pourraient aller vers des serveurs différents. Cela signifie simplement que la base de données est frappée deux fois de temps en temps. Un moyen d'atténuer cela consiste à implémenter des sessions persistantes, où un utilisateur donné est toujours envoyé au même serveur et l'équilibreur de charge prend uniquement une décision d'équilibrage au début d'une session utilisateur.