Едно от най-важните неща за по-ефективен и светкавично бърз уебсайт е използването на метода за предварително кеширане.

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 към ключа на кеша!

ПРОЧЕТЕТЕ ОЩЕ: