No he trabajado con ningún mecanismo de almacenamiento en caché y me preguntaba cuáles son mis opciones en el mundo .net para el siguiente escenario.
Básicamente tenemos un Servicio REST donde el usuario pasa una ID de una Categoría (carpeta de pensamiento) y esta categoría puede tener muchas subcategorías y cada una de las subcategorías podría tener 1000 contenedores de medios (objetos de referencia de archivos de pensamiento) que contienen información sobre un archivo que puede estar en un servidor NAS o SAN (los archivos son videos en este caso). La relación entre estas categorías se almacena en una base de datos junto con algunas reglas de permiso y metadatos sobre las subcategorías.
Entonces, desde la perspectiva de la interfaz de usuario, tenemos un control de árbol cargado lento que es impulsado por el usuario haciendo clic en cada subcarpeta (piense en el explorador de Windows). Una vez que llegan a una URL del archivo de video, pueden ver el video.
El número de usuarios podría crecer hasta los 1000 y las subcategorías y videos podrían estar en los 10000 a medida que el sistema crezca.
La pregunta es ¿deberíamos continuar en la forma en que funciona actualmente donde cada solicitud llega a la base de datos o deberíamos pensar en almacenar en caché los datos?
Estamos usando IIS 6/7 y Asp.net.