Назад к задачам
Middle — Senior
6

Многоуровневое кэширование данных

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

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

class DataProvider {
    public function getData(array $arguments): array
    {
        // ...
    }
}
$dataProvider = new DataProvider();
$data = $dataProvider->getData();