Я создаю веб-сайт с laravel, который полагается на внешний API, чтобы получить данные, которые я показываю своим пользователям (http://eztvapi.re в моем случае). Я использую жужжание для вызовов api, и он отлично работает.Выполнение нескольких запросов на api с использованием laravel
API очень прост, он либо отображает список шоу (с метаданными для них), либо информацию одного шоу с указанием его идентификатора.
Проблема возникает, когда мне нужно показать информацию, например, 15 приведенных показов, которые пользователь выбрал в качестве избранного. Это означает, что мне нужно запрашивать API 15 раз, по одному для каждого шоу, и это сильно замедляет работу в Интернете (слишком много запросов для API, что мне кажется не прав).
В основном это:
foreach ($favorites as $fav) {
$client = new Client();
$res = $client->get('http://eztvapi.re/show/'.$fav->id);
$show = $res->json();
}
Я рассмотрел копирование в мою базу данных содержимого апи, но поражения цели подключения к API в целом, и это необходимо будет обновляться очень часто. Я думал, что кэш-память - это путь, но я не понимаю, как подойти к этому маршруту, я искал кеш-память и, похоже, он предназначен только для кэширования запросов к базе данных (или, может быть, я плохо разбирался в документах).
Что было бы правильным способом для этого?
Может ли это быть любой помощью http://guzzle3.readthedocs.org/ plugins/cache-plugin.html или для laravel, это выглядит многообещающим https://github.com/RemiCollin/GuzzleCache – Dexa
Может, я посмотрю, смогу ли я его реализовать –
Mmmh, я использовал это: https://github.com/guzzle/cache-subscriber, и это не повлияло на время загрузки. –