Подтвердить что ты не робот

Должен ли я использовать HttpRuntime.Cache?

Я новичок в asp.net и задаю несколько вопросов о кеше:

  • HttpRuntime.Cache предоставляет только методы severals, и я думаю, что могу реализовать эти методы с помощью словаря самостоятельно.
  • Если HttpRuntime.Cache намного лучше, чем словарь, почему некоторые люди хотели бы реализовать свою собственную структуру кэша.
  • Как насчет блока MS Enterprise Cache?
4b9b3361

Ответ 1

HttpRuntime.Cache предоставляет только несколько методов, и я думаю, что могу для реализации этих методов с помощью словаря самостоятельно.

Ты ошибаешься. HttpRuntime.Cache - это гораздо больше, чем простой словарь. Он предлагает политику ограничения потоков и политики истечения срока действия кэша. Он предоставляет возможности использования пользовательской реализации и преимущества распределенного кэширования, что полезно в веб-фермах. Реализация этого со словарями может быть большой частью работы, с которой вы, вероятно, не захотите рисковать, поскольку вы будете в основном заново изобретать колеса, и даже если изобретать колеса не мешает вам, чтобы ваши права были правильными, они тонкие.

2) Если HttpRuntime.Cache намного лучше, чем словарь, почему некоторые люди хотели бы реализовать свою собственную структуру кэша.

Люди не хотели бы этого делать.

3) Как насчет блока MS Cache Cache?

Эта тяжелая артиллерия, которая не всегда необходима, когда вам нужно простое кеширование, которое может быть достигнуто с помощью того, что рамки уже предоставляют вам из коробки.

Примечание. В .NET 4.0 вы должны использовать новое System.Runtime.Caching пространство имен вместо HttpRuntime.Cache.

Итак, чтобы ответить на ваш вопрос: Should I use HttpRuntime.Cache

Да, если вы не используете .NET 4.0, в этом случае вы должны использовать классы из нового пространства имен System.Runtime.Caching.