Модуль умеет взаимодействовать с кэшем установленным по умолчанию в платформе. По большей части кэширование необходимо использовать тогда, когда происходят выборки большого объема данных.
При работе с кэшем необходимо придерживать следующей логики: сначала проверяем наличие необходимого кэша, если его нет, тогда создаем его. В следующий раз, данные уже будут подгружаться из кэша.
Взаимодействие с системным кэшем происходит за счет функции cache().
Внимание: если используется работа с кэшем, тогда не нужно забывать про его очистку, в случае изменения данных.
<?php/** * Copyright (c) 2019 Denis Artamonov * Created: 2/16/19 5:23 PM * Author: Denis Artamonov * * Пример контроллера с методом * В котором выполняется некоторая логика выборки данных и проверки кэша */namespaceArtamonov\Rest\Controllers\Example;classCache{publicfunctioncheck() { $response = [];// Отдадим данные из кэша если они в нем имеются// Иначе, получим данные из базы и запишем в кэш// $cacheId - уникальный идентификатор кэша// Срок кэша - 7 дней// Место хранения /bitrix/cache/example/checkif (!$response =cache()->get($cacheId,604800,'example/check')) {// Какие-то данные из базы $arResult = [1,2,3];// Массив ответа для клиента $response =&$arResult;// Сохраняем данные в кэш чтобы при следующем запросе уже не делать запросы в базуif ($response) {cache()->set($response); } }// Возвращаем ответ клиентуresponse()->json($response); }}