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

Вид: 13999|Ответ: 0

[ASP.NET] ASP.NET Кэш

[Скопировать ссылку]
Опубликовано 17.06.2015 11:27:42 | | |
ASP.NET предоставляет программные возможности, которые по сути кэшируют информацию в ASP.NET приложении. Функциональность похожа на объект Application, но позволяет динамически поддерживать кэшированную информацию на протяжении всего срока жизни ASP.NET приложения. Кэширование данных в приложении значительно повышает производительность, поскольку данные локальны для сервера и могут быть быстро извлечены. Вместо того чтобы заново запрашивать исходный источник данных. Особенно крупным узким местом текущей системы является база данных, и рациональное использование кэша позволяет сократить множество ненужных доступов к базе данных, чтобы оптимизировать производительность системы.

      Объекты кэша улучшают возможность реализовать уведомления о истечении срока действия и обратных вызовов на основе релевантности, что позволяет другим пользователям управляющего приложения или самим ASP.NET выполнять действия с кэшированными элементами. Используйте объект Cache для хранения любого типа (типа значения или типа приложения) перед обновлением или удалением. Cache — более гибкий объект, чем объект приложения. Он поддерживает:

      1. Истечение и удаление на основе релевантности — объекты кэша позволяют автоматически привязывать срок действия и удаление значений кэша к событию файла, конкретной или относительной дате/времени или другому ключу кэша.

      2. Автоматическое управление блокировками — объекты кэша включают внутреннее управление блокировками, обеспечивающее синхронизацию для атомарных обновлений (обновлений, которые могут быть размещены в операции вычисления).

      3. Механизм обратного вызова — объект кэша предоставляет возможность задать функцию вызова при удалении элементов кэша.



      Метод добавления кэша включает Add() или Insert(), а метод Insert может использовать опциональные параметры для добавления кэша с использованием обоих стандартных параметров:

      Cache.Add (KeyName, KeyValue,Dependencies,AbsoluteExpiration,SlidingExpiration,Priority,CacheItemRemoveCallback);

      Параметры: имя кэша, кэшированный объект, зависимость, абсолютное время истечения, относительное время истечения, приоритет и события, вызванные истечением кэша.



      Зависимости от кэша: установлены зависимости файлов, другие зависимости от кэша, зависимости базы данных и методы истечения срока действия, и при изменении зависимостей кэш становится недействительным и может вызывать определённые события.

      1. Зависимости от файлов: кэш зависимостей в xml-файлах:


  1. <p>DataSet dsProducts = new DataSet();</p><p>//...dsProducts数y据Y</p><p>CacheDependency fileDepends = new CacheDependency(Server.MapPath("Northwind.xml"));</p><p>Cache.Insert("dsProducts", dsProducts, fileDepends);</p>
Копирование кода


      2. Другие зависимости от элементов кэша:

  1. <p>object cacheData;</p><p>string[] fileDependsArray = { Server.MapPath("Northwind.xml") };</p><p>string[] cacheDependsArray = { "Depend0", "Depend1", "Depend2" };</p><p>CacheDependency cacheDepends = new CacheDependency(fileDependsArray, cacheDependsArray);</p><p>Cache.Insert("cacheName", cacheData, cacheDepends);</p>
Копирование кода


         3. Установка срока годности:

         AbsoluteExpiration может установить абсолютное время истечения кэша, например, установить его на истечение через 30 минут:


  1. Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
Копирование кода

          NoSlidingExpiration может установить относительное время истечения: если кэш не будет доступен в установленное NoSlidingExpiration время, если кэш истекает и не будет доступен определённое время, кэш не истекает. Если вы получите доступ к кэшу в течение 30 минут, он не истекает:


  1. Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
Копирование кода






Предыдущий:Невозможно получить доступ к элементу "System.Web.Caching.Cache.NoAbsoluteExpiration" с использованием ссылок на экземпляры; ...
Следующий:Текстовое сообщение или QQ-сообщение заставит iPhone вашего друга вашего тирана сразу же вылететь, выключить его и заморозить!
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com