¿Dónde almacena HttpRuntime.Cache los datos?

Estoy tratando de implementar una aplicación web con funciones de almacenamiento en caché. La razón por la que necesito el almacenamiento en caché es que tenemos una aplicación que permite a los usuarios acceder a cursos en línea. Ahora, una vez que el usuario inicia sesión, lo validé contra nuestra base de datos. Una vez validado, quiero almacenar el ID de usuario y el ID del curso en la memoria caché durante 20 minutos, de modo que si lo solicita de nuevo puedo recuperar los valores del ID de usuario y el ID del curso y, si es válido, proporcionarle acceso Por algunos motivos no puedo Utilice las variables de sesión en esta aplicación para que no sean una opción.

Ahora, el código de caché en mi aplicación está dentro de un controlador HTTP (archivo .ashx). Ahora intenté llamar al objeto de caché como lo hace usted para una página aspx, pero no pude, probablemente porque es un controlador y no una página web. Asi que,

Cache.Insert("Id", 123); 

No funcionará en Handler. Entonces intenté HTTPRuntime.cache. Pero después de investigar un poco, descubrí que HTTPRuntime.cache es común a toda la aplicación. No entiendo completamente "Toda la aplicación". ¿Significa que es compartido por todos los usuarios en diferentes computadoras que acceden a nuestras aplicaciones? o significa que es compartido por todos los usuarios enuna computadora Accediendo a nuestra aplicación. Porque si es lo último estoy de acuerdo con ello. Entonces, ¿HTTPRuntime.cache es una buena manera de almacenar datos en caché para un navegador (o una computadora) o hay una manera mejor y diferente de implementar el almacenamiento en caché del navegador para almacenar datos?

Respuestas a la pregunta(1)

Su respuesta a la pregunta