feat: Add caching to streamer data retrieval

- Added caching mechanism to store and retrieve streamer data for API responses, improving performance.
- Implemented cache forget method in StreamerPanelController for CRUD operations to update cached data accordingly.
This commit is contained in:
Rico van Zelst
2024-03-26 10:30:09 +01:00
parent 39e9acf85b
commit 7ccd8ba022
3 changed files with 23 additions and 10 deletions

View File

@@ -4,6 +4,8 @@ namespace App\Http\Controllers;
use App\Models\Streamer;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cache;
class StreamerController extends Controller
{
@@ -22,4 +24,15 @@ class StreamerController extends Controller
{
//
}
/**
* API: JSON response of all streamers.
* Data is cached for 12 hours.
*/
public function all()
{
$streamers = Cache::remember('streamersListAllAPICache', 60 * 60 * 12, static fn () => Streamer::orderBy('champion_id')->get());
return response()->json($streamers);
}
}