c# caching httpruntime.cache

c# - ¿Debo usar HttpRuntime.Cache?



caching (1)

Soy un principiante en asp.net, y tengo algunas preguntas sobre Caché:

  1. HttpRuntime.Cache solo proporciona varios métodos y creo que puedo implementar estos métodos con Dictionary solo.
  2. Si HttpRuntime.Cache es mucho mejor que Dictionary, por qué a algunas personas les gustaría implementar su propio marco de caché.
  3. ¿Qué hay de MS Enterprise Cache Block?

HttpRuntime.Cache solo proporciona varios métodos y creo que puedo implementar estos métodos con Dictionary solo.

Piensas mal. HttpRuntime.Cache es mucho más que un simple diccionario. Ofrece políticas de seguridad de subprocesos y caducidad de caché. Proporciona la posibilidad de utilizar una implementación personalizada y beneficiarse del almacenamiento en caché distribuido, que es útil en granjas web. Implementar esto con diccionarios podría ser un montón de trabajo en el que probablemente no quieras aventurarte ya que básicamente reinventarás las ruedas e incluso si reinventar las ruedas no te molesta, las posibilidades de hacerlo bien son escasas.

2) Si HttpRuntime.Cache es mucho mejor que Dictionary, por qué a algunas personas les gustaría implementar su propio marco de caché.

La gente no querría hacer eso.

3) ¿Qué hay de MS Enterprise Cache Block?

Es una artillería pesada que no siempre es necesaria cuando se necesita un almacenamiento en caché simple que se puede lograr con lo que el marco ya le proporciona de inmediato.

Observación: En .NET 4.0, debe usar el nuevo System.Runtime.Caching nombres System.Runtime.Caching lugar de HttpRuntime.Cache .

Entonces, para responder a su pregunta: Should I use HttpRuntime.Cache

Sí, a menos que esté usando .NET 4.0, en cuyo caso debe usar clases del nuevo System.Runtime.Caching nombres System.Runtime.Caching .