Что такое «Кэшированные данные» в телефонах и смартфонах Андроид. Использование кэширования в Web-приложениях

09.08.2019

Процесс работы персонального компьютера сопряжен с выполнением пользовательских команд. Для оптимизации этого процесса и уменьшения временных затрат в компьютере реализовано множество технологий, основное место среди которых занимает кэширование. И если для продвинутых юзеров этот термин понятен, то у новичков он вызывает лишь недоумение. Что такое кэширование данных и какую роль этот процесс играет в работе компьютера? И насколько сильно разниться кэширование настольной системы от аналогичной процедуры в мобильных гаджетах?

Понятие кеша

Если говорить на простом языке, который будет понятен абсолютно всем категориям пользователей, то кеш - это буфер, в который помещаются обрабатываемые процессором данные, с целью ускорения доступа к ним кристаллу. Одним из основных преимуществ кеша является быстродействие, поскольку доступ к нему осуществляется значительно быстрее, чем к жесткому диску. Однако он обладает ограниченным объемом, что является одним из его недостатков. Стоит отметить, что технология кэширования применяется не только в CPU, но и в работе винчестера, в работе интернет-браузеров и различных онлайн-сервисов, а также во многих других процессах, происходящих во время работы персонального компьютера. В основу кэширования положено структурирование массивов данных, которые, в свою очередь, выступают всего-лишь копией основной информации, хранящейся на компьютере. Для ускорения доступа к кэшируемым данным, каждому массиву присваивается персональный тэг, выступающий в качестве идентификатора, необходимого для определения качества соответствия с оригиналом.

Процесс использования

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

Обновление данных

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

Политика записи

В процессе изменения массива данных, содержащегося в кеш-памяти, происходит и изменение оригинала данных, хранящегося на основном носителе. Временная задержка, которая присутствует между вносимыми изменениями, зависит от политики записи. На сегодняшний день существует всего два типа записи:
Немедленная запись. Все изменения вносятся одновременно в кеш и в основной памяти.
Отложенная или обратная запись. Изменения в массив данных, который находится в памяти постоянного запоминающегося устройства, вносятся не сразу, а с определенной периодичностью или если возникает запрос этих данных со стороны пользователя. Для отслеживания всех изменений используется принцип идентификации записей.

Современные вызовы

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

Взаимная работа кеша различных устройств

Из всего вышеописанного можно сделать вывод, что кеш-память работает более эффективно и быстро, если она одна. Однако как быть в том случае, если их много? В этом случае работа кешапроисходит по принципу когерентности или с использованием технологий взаимного обмена данными. Всего различают три типа обмена:
Инклюзивный: каждая кеш-память работает независимо от других.
Эксклюзивный: способ обмена данными разрабатывается индивидуально, с учетом всех индивидуальных особенностей.
Неэкслюзивный: универсальный стандарт обмена массивами данных.

Уровни кэширования

Современные модели процессоров и других девайсов поддерживают трех- или четырехуровневую кеш-память. Чем большим количеством уровней она обладает, тем больший объем данных может храниться в ней, однако, и тем большее количество времени необходимо для их обработки.
Кеш первого уровня. Является одним из наиболее быстрых, поскольку располагается непосредственно на одном физическом ядре кристалла, благодаря чему необходимо меньшее количество времени для обработки данных, хранящихся в нем. Этот кеш реализован во всех современных моделях CPU и работает он синхронно с процессором на одной частоте.

Кеш второго уровня. В большинстве случаев находится возле кеша первого уровня и используется в качестве памяти раздельного использования. Для определения его величины необходимо объем разделить на количество физических ядер, реализованных в кристалле.
Кеш третьего уровня. Является самым большим по объему, но и самым медленным в работе. Основным предназначением кеша третьего уровня является объединение хранящихся массивов данных, хранящихся в кеше второго уровня.

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

Ассоциативность кеша

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

Недавно у меня был достаточно горячий конфликт с популярным PHP пакетом для электронной коммерции. В результате мне захотелось рассказать об одной распространенной ошибке в архитектуре веб приложений.

Пакет с которым я работал, интенсивно использовал кэширование. Он не мог отдавать более 10 страниц в секунду, если не были включены некоторые «опциональные» настройки кэша. Очевидно что с такой производительностью они на самом деле не опциональны, а обязательны.

Я думаю, что когда у Вас есть такой замечательный инструмент как memcached, так и хочется использовать его для решения любой проблемы с производительностью. Но во многих случаях он не должен быть первым инструментом который Вы пытаетесь использовать. И вот почему:

- Кэширование может работать не для всех пользователе й - Вы открываете страницу - она загружается быстро. Но так ли это для всех пользователей? Кэширование очень часто позволяет оптимизировать время загрузки для большинства посетителей, но часто в реальности Вам надо чтобы страница загружалась быстро для всех без исключения (если следовать принципу six sigma). На практике запрос может промахиваться мимо кэша всегда для одного и того же пользователя, что еще более усугубляет ситуацию (Прим. переводчика : Я знаю совершенно реальный случай, когда в электронном магазине кэш срабатывал для 99% процентов пользователей и не работал для 1% посетителей имевших длинную историю покупок, как результат магазин работал медленно как раз для активных покупателей).

- Кэширование может уводить Вас в сторону от решения проблемы - Вы смотрите на наиболее медленно загружающуюся страницу и пытаетесь ее оптимизировать. Но хитрость здесь в том, что в реальности проблема с производительностью может лежать в другой области (опять six sigma). Вы «залечиваете» проблему кэшируя, например, страницу целиком, но сама проблема с производительностью никуда не уходит и остается скрытой (Прим. переводчика : с тем чтобы всплыть на других страницах еще и еще и еще раз).

- Управление кэшем в реальности непростая задача - Вы когда-нибудь боролись с "убеганием кэша " или с ситуацией когда большое количество элементов кэша инвалидируются одновременно?

Альтернативный подход

Кэширование должно рассматриваться как бремя без которого многие приложения не могут жить. Вы должны пытаться избегать этого бремени до тех пор, пока не исчерпаете весь арсенал легко применимых способов оптимизации.

Что это за способы?

Перед тем как вводить оптимизацию убедитесь что Вы прошлись по этому достаточно простому списку:

- Вы понимаете план исполнения каждого запроса? Если нет, установите long_query_time=0 и используйте команду mk-query-digest, чтобы получить полный список запросов. Выполните для каждого из них EXPLAIN, проанализируйте план исполнения.

Вы используете SELECT * чтобы потом использовать только небольшой набор столбцов? Или вы выбираете из БД много строк, но используете только некоторые из них? Если это так - то вы выбираете слишком много данных, ограничивая оптимизацию уровня СУБД, такую например как использование индексов.

Знаете ли Вы сколько именно запросов Вы используете для генерации одной страницы? Все ли они действительно необходимы? Можно ли какие-то из этих запросов превратить в один запрос или вообще убрать? (Прим. переводчика : Очень распространенная проблема. Реально знаю случай когда на странице отображался список учеников в классе, а затем в цикле для каждого ученика запрашивалась дополнительная информация, включая название класса. После переделки количество запросов сократилось с 61 до 3-х).

Думаю что как вывод можно сказать: «Оптимизация очень редко уменьшает сложность приложения. Старайтесь избегать усложнения, за счет оптимизации только того, что действительно надо оптимизировать» - цитата со слайда Джастина - instrumentation-for-php .

С точки зрения долговременной перспективы, многим приложениям следует сохранять архитектуру простой и не поддаваться соблазну решать проблемы так «как это делают реальные пацаны».

Прим. переводчика : Совершенно реальный диалог произошедший не так давно:
- Так у нас проблемы с производительностью, надо добавить кэширование, вертикальное партиционирование и NoSQL DB для логинов
- Парни - я тут посмотрел EXPLAIN - у Вас fullscan запрос на 4,000 строк, я попробовал создать индекс- все ускорилось в 26 раз.

Несколько замечаний к переводу

1. Термин cache stampeding - я перевел как убегание кэша (был соблазн перевести как «просрачивание», но это было бы неправильно). Если коротко, это ситуация, когда например определенный запрос выполняется достаточно долго и результаты этого запроса кэшируются, когда затем эти данные рано или поздно уходят из кэша, и одновременно рендерится 10 страниц на которых эти данные нужны, то в БД отправляется 10 медленных запрсов, вместо одного. Обычно с этим борются пере запрашивая данные до того как они будут выкинуты из кэша. см например
2. Хочу обратить внимание, что в статье не говорится что кэшировать данные не надо. Их надо кэшировать, но только после того как Вы попробуете несколько простых способов оптимизации запросов к БД. Иными словами начинать надо с простого.

Кэширование — это один из способов оптимизации Web приложений. В любом приложении встречаются медленные операции (SQL запросы или запросы к внешним API), результаты которых можно сохранить на некоторое время. Это позволит выполнять меньше таких операций, а большинству пользователей показывать заранее сохраненные данные.

Наиболее популярная технология кеширования для Web приложений — Memcache .

Когда нужно кэшировать

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

  • Используйте классы или функции, для работы с данными. Не используйте повторяющихся SQL выборок в основном приложении.
  • Используйте обертки для работы с внешними API.

Что кэшировать?

Кэшировать нужно данные, которые медленно генерируются и часто запрашиваются. На практике это обычно:

  • Результаты запросов к внешним сервисам (RSS, SOAP, REST и т.п.).
  • Результаты медленных выборок из базы данных.
  • Сгенерированные html блоки либо целые страницы.

Кэширование выборок из баз данных

Запросы к базе данных — наиболее распространенный пример. На основе Мemcache реализуется очень просто:

!$list = memcache_get("online_users") ) { $sql = "SELECT * FROM users WHERE last_visit > UNIX_TIMESTAMP() - 60*10"; $q = mysql_query($sql); while ($row = mysql_fetch_assoc($q)) $list = $row; memcache_set("online_users", $list, 60*60); } return $list; } $list = get_online_users(); ...

# Запрос на получение пользователей кэшируется на 1 час

Обновление данных

Если Вы кэшируете данные, которые могут обновляться, необходимо очищать кэш после каждого обновления:

memcache_delete("user" . $id); }

Кэширование списков

Допустим, Вы кэшируете данные каждого пользователя, как в примере, а также их списки (например, список online пользователей). При обновлении данных пользователя, Вы удаляете данные из кэша только для указанного пользователя. Но его данные могут также присутствовать в списке online пользователей, которые тоже лежат в кэше. Сбрасывать списки при каждом обновлении данных любого пользователя не эффективно. Поэтому обычно используют такой подход:

  1. Кэшируют списки, которые состоят только из ID пользователей.
  2. Для вывода списка отправляют отдельный запрос для получения данных каждого пользователя.

Реализация выглядит так:

id FROM users WHERE last_visit > UNIX_TIMESTAMP() - 60*10"; $q = mysql_query($sql); while ($row = mysql_fetch_assoc($q)) $list = $row["id"] ; memcache_set("online_users", $list, 60*60); } return $list; } $list = get_online_users(); foreach ($list as $id) { $user = get_user($id); ... }

# Получим список ID пользователей и для каждого из них получим актуальные данные

Для получения данных сразу нескольких объектов можно использовать Multiget .

Повторные запросы

Некоторые данные могут запрашиваться несколько раз в рамках одной страницы, например:

get_user($_SESSION["id"])["name"] )?>

... Email: get_user($_SESSION["id"])["email"] ?> ... get_user($_SESSION["id"])["nick"] ?>">Моя страница ...

Каждый вызов get_user() будет получать данные из кэша. Если Memcache стоит на отдельном сервере, это вызовет большой сетевой трафик и задержки.

Чтобы этого избежать, можно использовать дополнительный кэш внутри самого приложения:

global $app_cache; if ($app_cache["user" . $id]) return $app_cache["user" . $id]; if (!$data = memcache_get("user" . $id)) { $sql = "SELECT * FROM users WHERE id= " . intval($id); $q = mysql_query($sql); $data = mysql_fetch_assoc($q); memcache_set("user" . $id, $data, 60*60); $app_cache["user" . $id] = $data; } return $data; } function save_user($id, $data) { global $app_cache; mysql_query("UPDATE users SET ... WHERE id = " . intval($id)); memcache_delete("user" . $id); unset($app_cache["user" . $id]); }

В реальных приложениях, имеет смысл иметь обертку для Memcache с дополнительным кэшом:

inner_cache)) return $this->inner_cache[$key]; $data = memcache_get($this->resource, $key); $this->inner_cache[$key] = $data; return $data["value"]; } public static function set($key, $value, $ttl) { memcache_set($key, $value, $ttl); $this->inner_cache[$key] = $value; } public static function del($key) { memcache_delete($key); unset($this->inner_cache[$key]); } }

# $inner_cache хранит дополнительный кэш

Внимание. Использование этого подхода может приводить к утечкам памяти в случаях, когда идет работа с большим количеством данных в кэше. Например, в cron-задачах (допустим, мы перебираем всех пользователей для отправки рассылки). Тогда лучше добавить отключение внутреннего кэша:

public static $inner_cache_enabled = true; public static function get($key) { if (self::$inner_cache_enabled && array_key_exists($key, $this->inner_cache)) return $this->inner_cache[$key]; $data = memcache_get($this->resource, $key); $this->inner_cache[$key] = $data; return $data["value"]; } public static function set($key, $value, $ttl) { memcache_set($key, $value, $ttl); if (self::$inner_cache_enabled) $this->inner_cache[$key] = $value; } public static function del($key) { memcache_delete($key); unset($this->inner_cache[$key]); } } ... mem_cache::$inner_cache_enabled = false;

# Отключаем внутренний кэш

Подогревание

При обновлении особенно тяжелых данных следует использовать не сброс кэша, а прямое обновление данных в нем:

# операции по обновлению внешних ресурсов $data = file_get_contents("http://rss.com/rss"); memcache_set("rss", $data, 60*60); }

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

Время жизни (ttl)

ttl (время жизни) — это время, после которого, данные будут удалены из кэша. В Memcache устанавливается в секундах:

60*60 );

# Установка ttl на 1 час

Чаще всего ttl ставят от нескольких минут до нескольких дней. Не используйте значение 0 (бесконечное хранение), это может засорить память.

LRU

Любой кэш работает по принципу вытеснения если ему не хватает памяти. Т.е. если Memcache может использовать максимум 1G памяти, а Вы пытаетесь сохранить ключей на 2G, то половину из этих данных Memcache удалит. Для определения, какие именно ключи удалять, используется алгоритм LRU (Least Recently Used):

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

Кэширование очень медленных запросов

Представьте, что у Вас есть запрос, который выполняется 10 секунд. Вы сохраняете его в кэш на 1 час. Когда проходит это время, данные в кэше удаляются. В первые 10 секунд после этого Вы сталкиваетесь с ситуацией, когда несколько пользователей одновременно вызывают этот тяжелейший запрос. Это может привести к катастрофическим последствиям, т.к. в течение 10 секунд может быть несколько сотен или тысяч таких вызовов.

Чтобы этого избежать, необходимо использовать специальную методику дублирования .

Атомарные операции

Иногда в кэше хранятся счетчики (например, количество пользователей). При добавлении новых пользователей, вместо сброса счетчика и повторной выборки, можно просто увеличить значение кэша на единицу. Но сделать это через приложение нельзя, т.к. это приведет к потере данных от двух одновременно выполненных запросов:

Memcache поддерживает две атомарные операции увеличения и уменьшения чисел:

# Увеличит счетчик на 1, функция memcache_decrement() уменьшает счетчик

Самое важное

Кэширование в приложениях на основе Memcache — это очень сильный инструмент. Не забывайте, что Memcache не гарантирует Вам сохранности данных. Это значит, что нельзя рассчитывать на то, что сохраненные на 60 минут данные будут находиться в кэше именно 60 минут.

Вероятно, многие пользователи компьютеров и мобильных устройств хоть иногда, но сталкивались с таким понятием, как «кэшированные данные». Что это такое, многие, откровенно говоря, просто себе не представляют. Однако, пользуясь советами по ускорению любого устройства, имеющего операционную систему, они точно знают, что кэш надо чистить. Отчасти это действительно так, однако далеко не все данные подлежат удалению. Бывает, что без них некоторые программы, установленные на устройстве, попросту не будут работать.

Что значат «кэшированные данные» в общем понимании?

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

Чтобы было понятнее, можно привести пример, как используются кэшированные данные. Что это такое, например, в случае посещения пользователем какой-нибудь интернет-страницы, на которой он смотрит фотографии? Это есть их копии в виде миниатюр, которые сохраняются в специальной папке на жестком диске компьютера или на внутреннем накопителе мобильного устройства. При повторном входе на страницу пользователю не приходится ждать, пока загрузится весь контент (например, графика, видео и, вообще, мультимедиа), поскольку все элементы на страницу добавляются как раз из каталога кэша.

Что такое кэшированные данные в телефоне?

Но это было только общее обоснование. С интернетом все понятно. Посмотрим теперь, что такое кэшированные данные приложений в телефоне (имеются в виду апплеты, отличные от веб-браузеров).

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

Примеры использования кэша

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

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

Самый простой пример – игровые кэшированные данные. Что это может быть? Да все, что угодно: дополнительные текстуры, графика, видео, аудио или даже параметры самой игры. Такую информацию, как уже понятно, удалять нельзя ни в коем случае, поскольку потом игра просто не запустится или выдаст ошибку, гласящую, что для старта не хватает того-то и того-то.

То же самое касается некоторых музыкальных приложений для мобильных устройств. В качестве примера возьмем FL Studio Mobile. Даже собственный инсталлятор приложения не имеет всего, что необходимо для работы секвенсора. Иными словами, устанавливается только основная программная оболочка.

Что такое кэшированные данные приложений в телефоне относительно программ этого типа? Это наборы инструментов, эффекты, настройки взаимодействия с другими апплетами, параметры поддержки определенных форматов аудио и т. д. Как правило, такой кэш сохраняется в специальной папке obb, которая находится на внутреннем накопителе, если не указано, что ее можно разместить на съемной карте памяти. Места такая информация занимает порядочно, но без нее приложение окажется нефункциональным (чего стоит только одна программная оболочка, в которой нет ни инструментов, ни эффектов?).

Очистка кэша на мобильном девайсе стандартными средствами

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

В любом Android-девайсе имеется два инструмента очистки кэша. Первый предназначен для удаления данных для всех приложений, второй позволяет почистить кэш только для одного отдельно взятого апплета.

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

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

Далее нужно просто выбрать нужный апплет, а после входа в его меню снизу тапнуть по кнопке очистки кэша. В общем-то, и первый, и второй метод выглядят несколько неудобными, поскольку в этом случае может производиться так называемое удаление из разных источников. Поэтому лучше использовать специальные программы.

Использование оптимизаторов и чистильщиков

Сегодня таких программ по аналогии со стационарными компьютерными системами создано немало. В тех же хранилищах Play Market или AppStore их можно найти даже не десятки, а сотни.

Кэшированные данные (что это, уже понятно) могут удаляться и для всей системы, и для каждого выбранного апплета.

Что касается самих программ, наиболее предпочтительными выглядят приложения узкой направленности и апплеты, предназначенные для общей оптимизации. Первые представлены такими программами, как App Cache Cleaner, Auto Cahe Cleaner и т. д.

Среди оптимизаторов особо можно выделить мобильные версии CCleaner, All-in-one Toolbox, Clean Master и многие другие. Что именно использовать, это уже вопрос собственных предпочтений, ведь каждая такая программа имеет и свои плюсы, и минусы.

Вместо итога

Вот и все насчет понимания термина «кэшированные данные». Что это такое, думается, большинству пользователей уже ясно. Однако к вопросу очистки такой информации нужно подходить крайне осторожно, поскольку для некоторых типов программ, как было сказано выше, она может оказаться необходимой в работе. Но как показывает практика, лучше все же обратиться к утилитам общего действия. В них инструмент очистки кэша является обязательным модулем. А при их использовании заодно можно еще и ускорить систему.

Что такое кэшированные данные и кэширование?

Компьютер, увы, не моментально выполняет команды, которые получает от людей. Для ускорения этого процесса применяется ряд хитростей, и почетное место среди них принадлежит кэшированию. Что это такое? Чем являются кэшированные данные? Как этот процесс собственно происходит? Что такое кэшированные данные в смартфоне "Самсунг", к примеру, и отличаются они чем-то от тех, что в компьютере? Давайте приступим к получению ответов на эти вопросы.

Что такое кэш?

Так называют промежуточный буфер, который обеспечивает быстрый доступ к информации, вероятность запроса которой выше всего. Все данные содержатся в нём. Важным преимуществом является то, что извлечь всю необходимую информацию из кэша можно значительно быстрее, чем из исходного хранилища. Но существует значительный недостаток – размер. Кэшированные данные применяются в браузерах, жестких дисках, ЦПУ, веб-серверах, службах WINS и DNS. Основой структуры являются наборы записей. Каждая из них ассоциирована с определённым элементом или блоком данных, которые выступают копией того, что есть в основной памяти. Записи имеют идентификатор (тег), с помощью которого и определяется соответствие. Давайте посмотрим с немного другой точки зрения: что такое кэшированные данные в телефоне "Самсунг" или другого производителя? Отличаются ли они от тех, что создаются в компьютере? С принципиальной точки зрения – нет, разница исключительно в размере.

Процесс использования

Когда клиент (они были перечислены выше) запрашивает данные, то первое, что делает компьютер – исследует кэш. Если в нём находится необходимая запись, то она и используется. В этих случаях происходит попадание. Периодически данные из КЭШа копируются в основную память. Но если нужная запись не была найдена, то происходит поиск содержимого в базовом хранилище. Вся взятая информация переносится в кэш, чтобы к ней потом можно было обращаться более быстро. Процент, когда запросы увенчиваются успехом, называется уровнем или коэффициентом попадания.

Обновление данных

При использовании, допустим, веб-браузером осуществляется проверка локального кэша с целью найти копию страницы. Учитывая ограниченность данного вида памяти, при промахе принимается решение отбросить часть информации, чтобы освободить пространство. Чтобы решить, что именно будет заменено, используют различные алгоритмы вытеснения. Кстати, если говорить о том, что такое кэшированные данные на "Андроиде", то в массе своей они используются для работы с картинками и данными приложений.

Политика записи

Во время модификации содержимого кэша обновляют данные и в основной памяти. Временная задержка, которая проходит между внесением информации, зависит от политики записи. Существует два основных типа:

  1. Немедленная запись. Каждое изменение синхронно заносится в основную память.
  2. Отложенная или обратная запись. Обновление данных проводится периодически или при запросе со стороны клиента. Чтобы отслеживать, было ли внесено изменение, используют признак с двумя состояниями: «грязный» или изменённый. В случае промаха может производиться два обращения, направленные основной памяти: первое используется, чтобы записать данные, что были изменены из кэша, а второе – чтобы прочитать необходимый элемент.

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

Современные вызовы

С увеличением частотности процессоров и повышением производительности оперативной памяти появилось новое проблемное место – ограниченность интерфейса передачи данных. Что из этого может подметить знающий человек? Кэш-память очень полезна, если частота в ОЗУ меньше чем в процессоре. Многие из них имеют свой собственный промежуточный буфер, чтобы уменьшить время доступа к оперативной памяти, которая действует медленнее, нежели регистры. В ЦП, которые поддерживают виртуальную адресацию, часто размещают небольшой, но очень быстрый буфер трансляций адресов. Но в других случаях кэш не очень полезен, а иногда только создаёт проблемы (но это обычно в компьютерах, которые подверглись модификации непрофессионалом). Кстати, говоря о том, что такое кэшированные данные в памяти смартфона, ндо отметить, что из-за маленького размера устройства приходится создавать новые миниатюрные реализации кэша. Сейчас некоторые телефоны могут похвастаться параметрами, как у передовых компьютеров десять лет назад – а какая разница в их размере!

Синхронизация данных между разными буферами

  1. Инклюзивный. Кэш может вести себя как угодно.
  2. Эксклюзивный. Разрабатывался под каждый конкретный случай.
  3. Неэкслюзивный. Стандарт широкого распространения.

Уровни кэширования

Их количество обычно равняется трём или четырём. Чем больше уровень памяти, тем она объемнее и медленнее:

  1. L1 cache. Самый быстрый уровень кэша – первый. По сути, он часть процессора, поскольку расположен на одном кристалле и относится к функциональным блокам. Обычно делится на два вида: кэш инструкций и данных. Большинство современных процессоров без этого уровня не работают. Данный кэш функционирует на частоте процессора, поэтому обращение к нему может осуществлять каждый такт.
  2. L2 cache. Обычно располагается вместе с предыдущим. Является памятью раздельного пользования. Чтобы узнать его величину, необходимо весь объем, отданный под кэширование данных, поделить на количество ядер, которое есть в процессоре.
  3. L3 cache. Медленный, но самый большой зависимый кэш. Обычно больше 24 Мбайт. Используется, чтобы синхронизировать данные, которые поступают от различных кэшей второго уровня.
  4. L4 cache. Использование оправдано только для высокопроизводительных многопроцессорных майнфреймов и серверов. Его реализуют в качестве отдельной микросхемы. Если вы задаёте вопрос о том, что такое кэширование данных в смартфоне "Самсунг" и ищете в нём этот уровень – могу сказать, что лет на 5 точно поторопились.

Ассоциативность кэша

Это фундаментальная характеристика. Ассоциативность кэшированных данных необходима для отображения логической сегментации. Она, в свою очередь, нужна из-за того, что последовательный перебор всех имеющихся строк занимает десятки тактов и сводит на нёт все преимущества. Поэтому используется жесткая привязка ячеек ОЗУ к данным кэша, для сокращения времени поиска. Если сравнивать промежуточные буферы, у которых одинаковый объем, но разная ассоциативность, то тот, у кого она большая, будет работать менее быстро, но с значительной удельной эффективностью.

Заключение

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

Что такое кэш-память? Что такое кэш для "Андроид"

В этой статье будет рассказано, что такое кэш и какие существуют виды. Этот вопрос часто задают пользователи компьютера, которые не до конца понимают значение этого термина. Существует несколько видов кэш-памяти на разных устройствах. Она является неотъемлемой частью компьютера и просто необходима ему для качественной работы. В статье будут детально описаны отличия и рассказано о том, когда кэш стоит очищать и к чему это приведет.

Что такое кэш-память?

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

Что такое кэш компьютера?

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

Пример работы

Можно привести пример работы кэш-памяти, чтобы правильно понять её суть. Человеку требуется узнать номера телефонов, которые он не помнит. Найти телефоны в справочнике будет равноценно тому, как процессор ищет информацию в оперативной памяти. Если эти номера телефонов будут записаны на отдельном листе, человеку удастся быстро узнать их без поиска в справочнике. Вот этот листок является примером кэш-памяти. Компьютер автоматически загружает туда информацию, которая часто может стать полезной. Это, конечно же, сильно оптимизирует работу компьютера, за счет этого повышается его производительность.

Кэш браузера

Браузер также использует кэш-память. Он загружает туда информацию, картинки, звуки и другое. Это можно заметить по тому, как браузер быстрее открывает сайт, на который вы часто заходите, нежели тот, на какой попали в первый раз. Это происходит, потому что браузер "понимает", что этот сайт часто посещается вами, и для того, чтобы каждый раз не загружать информацию с него и не тратить на это время, он сохраняет её в кэш-память, чтобы оптимизировать работу и сэкономить время. Для этого временного хранилища браузер использует место на жестком диске. Размер кэша браузера можно настроить в самом браузере. Но стоит помнить, что если он заполнит информацией все место, то новая информация будет загружаться туда способом вытеснения старой, которая не используется. Кэш браузера можно легко очистить, если вы не считаете его нужным.

Кэш для игр на "Андроид"

Пользователи смартфонов "Андроид" часто задаются вопросом о том, что такое кэш для "Андроид". Чаще всего он требуется для игры с трехмерной графикой, которая требует большего пространства для дополнительных материалов. Иногда для игр он скачивается самостоятельно при входе в игру. Используя интернет, игра самостоятельно загружает требуемую ей информацию и помещает её в хранилище. Но иногда случается так, что кэш для игры нужно поместить в хранилище самостоятельно. Сделать это можно, следуя инструкции к установке игры. Чаще всего игра с кэшем устанавливается следующим образом. Установочный файл помещается в любое место на вашем устройстве, ведь этот файл требуется просто установить. Кэш, в свою очередь, должен быть помещен в специально отведённое место на вашем смартфоне, для того чтобы во время запуска игры он начал считывать информацию с нужного места. Если кэш расположен там, где нужно, игра будет спокойно функционировать. Место, куда нужно его копировать, указано в описании игры.

Что значит "очистить кэш"?

Что такое "очистить кэш", знает не так много людей. Это означает удалить всю накопившуюся информацию на вашем устройстве, нужную для оптимизации работы компьютера. Делать это нужно только в том случае, если это крайне необходимо. Допустим, после удаления кэша браузера, сайты, которыми вы постоянно пользуетесь, будут загружаться немного дольше. Ведь ему нужно будет заново загрузить всю информацию, находящуюся на сайте. После удаления кэша на смартфоне игры, которые его требуют, не смогут запуститься без этих материалов.

Человек должен понимать, что такое почистить кэш, и знать, к чему это может привести. Конечно, иногда случаются ситуации, когда очистить его необходимо. Это может быть связано с переполнением памяти или же неполадок, к которым он может привести. Иногда случается, что кэш может мешать работе компьютера. За этим необходимо следить. Программа CCleaner способна найти в системе тот кэш, в котором вы не нуждаетесь, и удалить его. Эта программа сильно помогает оптимизировать работу компьютера. Она может проверить ваш компьютер на ошибки, очистить системный реестр, а также выставить автозагрузку программ при запуске компьютера. Это тоже можно назвать немаловажной функцией. Ведь часто программы, которые мы скачиваем с интернета, автоматически загружаются при запуске "Виндовс". Если большое количество таких программ загружается во время старта компьютера, это может занимать много времени при включении. Это легко может исправить программа CCleaner, вы сами сможете выставить автозапуск программ, в которых нуждаетесь, а какие вам не нужны при запуске системы. Когда вы уже знаете, что такое очистить кэш, нужно детально узнать причины, зачем нужно это делать.

Зачем чистить кэш?

Одна из причин, почему эту память необходимо очищать, - это свободное место на диске. Особенно это касается людей, которые имеют несколько браузеров. Каждый браузер для своего личного кэша будет забирать пространство с вашего жесткого диска, это может существенно сказаться на памяти. Также он сохраняет оформление сайтов. Допустим, если вы заходили на сайт, ваш браузер сохранит его оформление. И после вышедшего нового оформления вы не сможете его увидеть, так как вам будет показано оформление, сохраненное в вашем кэше. Кроме того, он также сохраняет историю посещений сайтов. Если вы не желаете, чтобы кто-то мог посмотреть сайты, которые вы посещаете, вы также можете его очистить. Удалить лишний кэш с вашего смартфона также будет полезно. Часто игры при удалении его оставляют. Поэтому на вашем телефон может оставаться кэш игры, которой уже нет на компьютере, и этим забирать достаточно много памяти. Учитывая то, что смартфон имеет не так много памяти, как компьютер, это играет большую роль. Надеемся, эта статья дала вам общие понятия и помогла ответить на вопрос о том, что такое кэш.

Как на "Андроиде" очистить кеш разными способами?

Каким бы большим объемом памяти ни обладал ультрасовременный планшет, рано или поздно он засоряется всевозможными ненужными файлами. Поэтому перед каждым обладателем подобного гаджета встает вполне логичный и закономерный вопрос о том, как очистить кэш браузера на "Андроиде"? Прочитав данную статью, вы узнаете, как это сделать несколькими разными способами.


Почему возникает потребность в удалении файлов?

Прежде чем начать разбираться, как на "Андроиде" очистить кеш, нужно попытаться понять, что подразумевается под этим термином и отчего появляется такая необходимость. Системный кэш – это не что иное, как набор видео, изображений, текстовых и прочих вспомогательных файлов, отвечающих за максимально корректное отображение страниц интернет-браузера.

Наверняка многие из тех, кто интересуется, как на "Андроиде" очистить кеш, неоднократно обращали внимание на то, что на загрузку веб-страницы требуется какое-то время. Иногда этот процесс проходит быстро, а иногда приходится ждать довольно долго. Чем больше вы пользуетесь интернетом, тем большее количество файлов хранится в кэше вашего девайса. С одной стороны, это позволяет сэкономить интернет-трафик. С другой - возникает вопрос о целесообразности хранения большого количества ненужных файлов, многие из которых, возможно, никогда не будут использованы.

Точно так же обстоит дело с играми и приложениями. Любое действие или достижение сохраняется в кэше, и совершенно непонятно, для чего накапливать эти данные, если пользователь захотел избавиться от надоевшей игры или приложения.


Очистка при помощи встроенных средств

Перед тем как на "Андроиде" очистить кеш, следует разобраться, что мы выигрываем в результате таких действий. Необходимо сразу сказать, что подобные манипуляции позволяют решить сразу несколько важнейших проблем. Очистка свободного места в памяти способствует существенному ускорению работы всей системы.

В любом современном девайсе, работающем на базе операционной системы Android, имеется специальная функция, позволяющая избавиться от ненужных файлов. Чтобы воспользоваться ею, следует открыть настройки гаджета и, перейдя в раздел “Память”, зайти во вкладку “Кэшированные данные”. В результате этих действий на экране появится предложение освободить память от лишних файлов. После нажатия “Ok” будет произведена очистка. Однако следует понимать, что слишком частое повторение этого алгоритма может навредить системе.


Как провести полную очистку устройства?

Тем, кто не знает, как на "Андроиде" очистить кеш, наверняка будет интересно, что это можно сделать при помощи сброса до заводских настроек. Это позволит полностью очистить устройство, стерев с него все, что было записано после приобретения. Для избавления от всех ненужных файлов можно зайти в настройки гаджета и отыскать там вкладку “Конфиденциальность”. После этого пользователю остается лишь нажать клавишу “Сброс настроек” и перезагрузить устройство.

Избавление от ненужных файлов при помощи сторонних программ

Те, кого интересует, как очистить кэш на планшете ("Андроид" на этих девайсах устанавливается довольно часто),будут удивлены, поняв, что это можно сделать при помощи специального софта. Работа всех "чистильщиков" основана на одном принципе. Поэтому пользователю нужно открыть соответствующую программу и, запустив анализ памяти, дождаться появления отчета о найденных файлах, от которых можно избавиться. Для запуска удаления данных нужно активизировать функцию очистки кэша.

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

Что такое кэш в ОС андроид?

Сережа белкин

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

Сергей пушечников

на каждом мобильном устройстве есть своя операционная система. в зависимости от марки телефона, ОС (операционная система) называется по-своему. IOS у APPLE, android у GouGle и Samsung. есть так же ещё множество операционок, например Simbyan на Nokia. а на старых моделях телефонов ОС одинаковая.
а кеш - это место для сохранения используемых в данный момент файлов. а на ОС Android кеш используется для всего - для просмотра видео, для звонков, СМС, ММС, графических программ типа AlterGeo, Яндекс карт и прочего.

Артем фомичев

Довольно часто начинающие пользователи андроид-устройств сталкиваются с новым для себя понятием кэш игр и приложений. Что такое кэш приложений Android понять несложно - это архив, содержащий все необходимые файлы приложения или игры (аудио- и видеофайлы, текстуры и прочая необходимая для корректной работы приложения информация). Кроме того, кэш всегда предназначен для конкретной модели смартфона, поэтому в кэше хранятся файлы с информацией непосредственно о самом гаджете: разрешение экрана смартфона, тип процессора и видеокарты. Нетрудно догадаться, что попытка установить на смарфон игру с кэшем, предназначенным для другой модели девайса, положительных результатов не принесет. Чтобы узнать какой кэш подходит именно вашему устройству, воспользуйтесь специальным онлайн-сервисом "Какой у меня кэш? ". Кэш приложений как правило скачивается вместе с исполняемым файлом на андроид, который имеет расширение.apk. Для того, чтобы после запуска apk-файла приложение установилось и корректно заработало на вашем смартфоне, кэш нужно распаковать в определенное месте на флеш-карте. Заранее позаботьтесь о том, чтобы места на флешке хватило, так как кэш приложений, а особенно 3D игр, может достигать достаточно внушительных размеров. К примеру, кэш игры Grand Theft Auto: San Andreas имеет размер 1.7 гигабайта, что, согласитесь, очень немало. Теперь, когда не осталось вопросов по поводу "что такое кэш на андроид", давайте поговорим о самой процедуре установки приложения с кэшем. Разберем две ситуации: в первом случае кэш мы скачиваем сразу на смартфон через интернет, во втором случае - кэш скачан заранее на компьютер, и его нужно передать на устройство. Установка приложения с кэшем с помощью интернета: На устройстве должен находиться исполняемый файл, то есть apk-файл. Запустите apk-файл, после его установки откроется приложение и автоматически начнется скачивание всех необходимых для работы приложения файлов. Этот способ удобен тем, что пользователю совершенно не нужно заботиться о том, куда устанавливать кэш, так как автоматическая установка расположит файлы на правильном месте. Беспокоиться о том, что кэш может не подойти конкретной модели смартфона тоже не стоит - скачивание кэша происходит специально под вашу модель устройства. К сожалению, недостаток такого способа также очевиден - вам нужен будет иметь доступ к интернету на телефоне, желательно с безлимитным трафиком. Согласитесь, что "тянуть" из интернета кэш, весящий более 100Мб достаточно проблематично, а уж если скорость урежется при превышении трафика процесс скачки может затянуться очень надолго. Установка приложения с заранее скачанным кэшем: Распаковать скачанный архив с кэшем Передать папку кэша с компьютера на телефон (через bluetooth или с помощью usb-кабеля) Расположить папку с кэшем строго в предназначенную директорию Скачиваем и запускаем установочный apk-файл. Разберем чуть более подробно третий пункт. Если вы скачиваете кэш приложения с какого-либо сайта или форума, то убедитесь в том, что там есть информация о том, где нужно расположить папку кэша. Если кэш будет располагаться в неправильной директории, приложение у вас просто не запустится. Так или иначе, путь расположения кэша приложения - это самое важное и если на ресурсе, откуда вы хотите скачать приложение, нет такой информации, то будет лучше поискать приложение на других форумах или сайтах.

Хотя ExpressionEngine создает ваши веб страницы очень быстро, вы заметите, что есть прямая зависимость между скоростью загрузки страницы и количеством динамической информации, которая на ней содержится. Чем больше тегов и переменных вы используете, тем больше циклов обработки должен выполнить механизм обработки шаблонов.

Технология кэширования в ExpressionEngine состоит из нескольких независимых систем кэширования данных, и настроек.

Кэширование запросов

Система кэширования запросов запоминает результаты запросов из вашей базы данных, сохраняя каждый запрос как текстовый файл. Когда посетители обращаются к вашим веб страницам, файлы кэша проверяются, на предмет наличия специфических запросов, которые требуются при создании страниц. Если они найдены, то ExpressionEngine использует данные из кэша вместо того, чтобы выполнять запрос к вашей базе данных. Это обеспечивает существенное сокращение полной нагрузки на вашу базу данных. Система кэширования запросов является полностью динамической, это означает, что она автоматически обновляет себя, когда новая информация добавляется в вашу базу данных.

Некоторые запросы не могут кэшироваться, так как их синтаксис динамически изменяется при каждом выполнении. Основной запрос отображения раздела, например, всегда проверяет соответствие даты окончания публикации записи, и текущего времени, чтобы определить, закончился ли срок публикации записи. Это вынуждает систему вносить изменения в запросы при каждой загрузке страницы; поэтому для него невозможно использовать стандартное кэширование запросов. (Смотрите , как альтернативу, которая может использоваться во многих случаях.)

Система кэширования запросов обеспечивает где-то от 30 % до 90%- сокращения общего количества запросов в зависимости от того, как созданы ваши страницы.

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

Кэширование тегов

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

Кэш тегов хранится в течение интервала времени, определенного пользователем. По истечении указанного интервала времени, кэш автоматически обновляется.

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

Cache="yes" refresh="10"

Примечание: refresh указывает время, в минутах, между обновлениями кэша.

Например, для кэширования тега в течение 30 минут, вы должны сделать следующее:

{exp:weblog:entries cache="yes" refresh="30"}

Кэширование шаблонов

Кэширование шаблонов (или кэширование динамических страниц) позволяет вам кэшировать все шаблоны, делая ваши страницы намного более легкими. Так как ExpressionEngine требует выполнение нескольких сценариев и запросов к базе данных для управления основными ресурсами, нельзя получить 100%-ых статических страниц, всегда будет немного меньше.

Кэширование шаблонов, как и кэширование тегов, основывается на времени. Чтобы включить кэширование шаблонов, щелкните по ссылке "Настройки" на странице шаблоны. На ней вы должны включите кэширование, и установить интервал времени обновления.

Мы называем это динамическим кэшированием страниц, так как система очищает кэш автоматически, когда происходят определенные события. Например, если вы будете кэшировать страницу комментариев, то при добавлении кем-нибудь комментария кэш будет очищен, на мгновение, отменяя настройку кэширования.

Примечание: Кэширование шаблонов заменяет кэширование тегов. Нет никакой дополнительной выгоды от использования кэширования тегов и шаблонов одновременно. Если включено кэширование страниц, то не действуют никакие другие виды кэширования. Поэтому, если вы хотите кэшировать отдельные теги, выключите кэширование страниц.

Кэширование динамических запросов раздела

Эта настройка находится на странице Admin > Глобальные настройки разделов. Эта функция увеличит скорость обработки тега {exp:weblog:entries} , кэшируя запросы, которые обычно выполняются динамически. Эта опция, однако, подходит не для всех людей.

Включайте эту функцию, только если вы не используете "будущие" или "прошедшие" записи.

Отключение запросов

Параметр disable= доступен в теге {exp:weblog:entries} . Он позволяет вам отключать функции тега, которые вы не используете, для повышения производительности. Тег weblog entries разработан так, что по умолчанию производится выборка большого количества информации: Категории, заказные поля, данные пользователя, и т.д. В зависимости от того, как вы используете тег, некоторые из этих данных могут быть не нужны. С помощью параметра "disable" вы можете отключить эти функции тега, чтобы сделать его более "легким".

Синтаксис для параметра disable следующий: disable="ЭЛЕМЕНТ, КОТОРЫЙ ВЫ ХОТИТЕ ОТКЛЮЧИТЬ" . Существует пять элементов, которые могут быть выключены:

  • categories
  • category_fields
  • custom_fields
  • member_data
  • pagination
  • trackbacks

Вы можете отключить несколько элементов, разделяя их, как показано ниже:

Disable="categories|member_data|trackbacks"

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

Например, если вы используете тег weblog entries для отображения заголовков 10 последних записей:

{exp:weblog:entries orderby="date" sort="desc" limit="10"}
{title}

{/exp:weblog:entries}

В этом примере вы отображаете только заголовки ваших записей, и нечего больше; тем не менее, тег weblog извлекает категории и другие данные автоматически. Используя параметр disable= , вы можете отключить ненужные функции для того, чтобы исключить их из запроса. В нашем случае вы не нуждаетесь ни в одной из функций, и все они могут быть отключены.

{exp:weblog:entries orderby="date" sort="desc" limit="10" disable="categories|custom_fields|member_data|pagination|trackbacks"}
{title}

{/exp:weblog:entries}

Примечание : Вы так же можете использовать параметр disable="category_fields" в тегах

Похожие статьи