2009-10-29 12 views
6

Tengo una aplicación ASP.NET que hace un uso extensivo de la API de caché ASP.NET para el almacenamiento en caché de datos de uso común. Además, estoy usando la dependencia de caché SQL basada en sondeo para rastrear la caducidad.Extensión de caché de datos ASP.NET para ser compartida en la granja de servidores web

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

¿Hay alguna forma de migrar el código para compartir caché de datos en varios servidores?

He pensado en usar memcached pero eso no funcionaría con la dependencia de caché SQL, ¿verdad?

¿Alguna otra solución?

Respuesta

2

Se puede usar siguientes opciones -

  1. Use el método descrito aquí para la sincronización de los datos a través de servidores Web - http://www.eggheadcafe.com/articles/20030420.asp

  2. utilizar el enfoque de almacenamiento en caché distribuido

  3. Usar caché biblioteca de la empresa .

2

Me parece que Windows Server AppFabric es exactamente lo que busca. (También conocido como "Velocidad"). Desde el introductory documentation:

Windows Server AppFabric proporciona una plataforma de aplicaciones distribuidas caché en memoria para el desarrollo de aplicaciones de alto rendimiento escalables, disponibles, y . AppFabric fusiona la memoria en varias computadoras para proporcionar una sola vista unificada de caché a las aplicaciones. Las aplicaciones pueden almacenar cualquier objeto CLR serializable sin que se preocupe por dónde se almacena el objeto . La escalabilidad se puede lograr por simplemente agregando más computadoras en la demanda . La memoria caché también permite copias de datos que se almacenarán en el clúster , protegiendo así los datos contra fallas . Se ejecuta como un servicio al que se accede a través de la red. En Además, Windows Server AppFabric proporciona una integración perfecta con ASP.NET que permite a la sesión ASP.NET objetos para ser almacenados en la caché distribuida sin tener que escritura a bases de datos. Esto aumenta el rendimiento y la escalabilidad de las aplicaciones ASP.NET.

Cuestiones relacionadas