Im aux prises avec un scénario en ce qui concerne l'accès à un cache sur plusieurs applications Web sur un seul serveur web (IIS 8/Windows Server 2012).correcte Architecture Cache pour plusieurs sites
Actuellement nous avons un serveur avec 16 Go de mémoire, qui fonctionne un seul site. Par souci d'arguments, disons que ce site consomme 10 Go de mémoire par lui-même (beaucoup je sais)
Il stocke tout en System.Web.HttpRuntime.Cache
, où la récupération est super rapide. Un scénario typique serait de récupérer 10 000 objets de ce cache, ce qu'il peut faire en quelques millisecondes.
Il devient difficile quand je veux ajouter une autre application Web à ce serveur qui est identique à 99,9% à l'autre site en cours d'exécution sur le serveur, et souhaite idéalement accéder à tout ce site éclairant rapidement HttpRuntime.Cache.
Le problème pour voir im est que ce HttpRuntime.Cache ne peut être partagé entre les applications en ce qui im au courant. J'ai essayé AppFabric, Redis et NCache, tous les agents de cache distribués, et le plus rapide, ils peuvent récupérer les mêmes 10 000 objets est d'environ 2 secondes, ce qui n'est pas bon pour un site Web à la demande. (En passant, je suis assez sûr que 1,999 de ces 2 secondes sont remplies de désérialisation qui est aussi très intensive)
Ai-je manqué quelque chose d'évident ... un moyen pour deux applications Web sur un serveur d'accéder à un cache qui ne nécessite pas une sérialisation/désérialisation coûteuse? Ou est-il temps de débourser pour un nouveau serveur web.