Představení mezipaměti relací v Laravelu 12.29
Laravel 12.29 přináší novou praktickou funkci nazvanou Vyrovnávací paměť relací, což usnadňuje ukládání dat specifických pro uživatele do mezipaměti, která musí zůstat v paměti jen tak dlouho, dokud trvá relace uživatele.
Tuto funkci přidala João Lopes in PR #56887.
Co je mezipaměť relací?
Mezipaměť relací poskytuje aplikaci mezipaměť s rozsahem pro jednotlivé relace. Na rozdíl od globální mezipaměti aplikace jsou data uložená v mezipaměti relace:
- Izolované pro každou jednotlivou relaci
- Automatické vyčištění po vypršení platnosti relace nebo po jejím zničení.
- Schopnost používat všechny známé metody cache Laravel, jako je get, put, remember a forget.
Díky tomu se dokonale hodí pro ukládání efemérních dat, která jsou důležitá pouze po dobu trvání relace.
Kdy byste ji měli použít?
Mezipaměť relací je ideální pro dočasná data specifická pro uživatele, která nemusí být uchovávána trvale. Některé příklady zahrnují:
- Data formuláře dočasně uložená během vícekrokového procesu.
- Krátkodobé odpovědi API vázané na jednoho uživatele.
- Výpočty, které jsou důležité pouze pro danou relaci.
- Jakákoli efemérní data spojená s relací uživatele.
Jak používat mezipaměť relací
Přístup k mezipaměti relace je jednoduchý pomocí příkazu cache na instanci relace.
// Retrieve a cached value from the session$discount = $request->session()->cache()->get('discount'); // Store a value in the session cache with a 5-minute expiration$request->session()->cache()->put( 'discount', 10, now()->addMinutes(5));
Rozhraní API bude povědomé každému, kdo už někdy použil pomocníka nebo fasádu mezipaměti Laravel, přičemž klíčovým rozdílem je rozsah.
👉 Podívejte se na kompletní implementaci v sekci žádost o stažení.