Pregunta

Tengo una aplicación ASP.NET que hace un uso extensivo de la API de caché ASP.NET para almacenar en caché los datos de uso común. Además, estoy usando la dependencia de caché sql basada en encuestas para rastrear la caducidad.

El inconveniente del diseño actual es que, en el entorno de la granja de servidores web, cada servidor web tiene su propia caché de datos que no se comparte entre los servidores.

¿Hay alguna manera de que simplemente pueda migrar el código para compartir caché de datos en varios servidores?

Sin embargo, he pensado en usar memcached que no funcionaría con la dependencia de caché sql, ¿verdad?

¿Alguna otra solución?

¿Fue útil?

Solución

¿Has mirado en Windows Server AppFabric (anteriormente Velocity)?

http://blogs.msdn.com/velocity/

Otros consejos

Puede usar las siguientes opciones:

  1. Utilice el enfoque descrito aquí para sincronizar los datos en granjas web: http://www.eggheadcafe.com/articles/20030420.asp

  2. Utilice el enfoque de almacenamiento en caché distribuido

  3. Usar el caché de la biblioteca empresarial.

Me parece que Windows Server AppFabric es exactamente lo que usted estan buscando. (AKA " Velocidad "). De la documentación introductoria :

  

Windows Server AppFabric proporciona un   aplicación distribuida en memoria   plataforma de caché para desarrollar   escalable, disponible y   Aplicaciones de alto rendimiento.   AppFabric fusiona la memoria en múltiples   computadoras para dar un solo unificado   vista de caché para aplicaciones.   Las aplicaciones pueden almacenar cualquier   objeto CLR serializable sin   preocupándose de dónde llega el objeto   almacenado La escalabilidad se puede lograr mediante   simplemente agregando más computadoras en   demanda. El caché también permite   copias de datos que se almacenarán en   clúster, protegiendo así los datos contra   fallas Se ejecuta como un servicio   Accedido a través de la red. En   Además, Windows Server AppFabric   proporciona una integración perfecta con   ASP.NET que habilita la sesión ASP.NET   objetos para ser almacenados en el   caché distribuida sin tener que   escribir en bases de datos. Esto aumenta   tanto el rendimiento como la escalabilidad   de aplicaciones ASP.NET.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top