Едно от най-важните неща за по-ефективен и светкавично бърз уебсайт е използването на метода за предварително кеширане.
Laravel вече направи кеширането толкова лесно за използване. Представете си, че имаме LessonController
, което е като по-долу:
Лесен начин за използване на кеша в Laravel е като този:
Има много неща за кеширането в Laravel като: драйвери, конфигурации и т.н. Но сега просто искаме да се съсредоточим върху темата на тази статия, която е „Предварително кеширане с Laravel”!
С тези имплементации, когато потребител удари посочения маршрут, Laravel ще кешира резултата за определен период от време, но ние искаме да сме още по-бързи, така че първо ще създадем ArticleService
за преместване на логиката на кеша и ще имаме по-чист контролер. ArticleController
и ArticleService
ще изглеждат така:
- ArticleController:
- ArticleService:
Второ, ще създадем команда Laravel CacheArticles
като по-долу:
php artisan make:command CacheArticles
- Команда CacheArticles:
При тази команда просто трябва да извикаме метода _index()
на ArticleService
и не забравяйте да добавите командата към App\Console\Kernel.php
:
След това, без да е необходимо да удряме маршрута, имаме предварително кеширан ресурс, който е предварително кеширан!
Не забравяйте да предадете параметър $perPage
на метода paginate()
, защото е много важен при този подход и друг проблем, в който можем да изпаднем, е да кешираме само първата страница на статиите, така че ако искаме да предотвратим това, трябва да поставим $perPage
към ключа на кеша!
ПРОЧЕТЕТЕ ОЩЕ:
- Php Artisan Down — Secret
- „Използване на Laravel контролери, събития, слушатели, услуги и валидиране заедно!“
- Dockerize Laravel, Nginx, MariaDB, PhpMyAdmin, Redis и Npm
- „Нов метод FindOr() на Laravel“
- Laravel добави префикс към ключ за масив!