<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Robert B.</title>
    <description>The latest articles on DEV Community by Robert B. (@robre21).</description>
    <link>https://dev.to/robre21</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F257244%2Fcdddfb95-71ac-49db-8302-e0f648bf3b3a.jpeg</url>
      <title>DEV Community: Robert B.</title>
      <link>https://dev.to/robre21</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/robre21"/>
    <language>en</language>
    <item>
      <title>Cachebusters</title>
      <dc:creator>Robert B.</dc:creator>
      <pubDate>Wed, 06 May 2020 21:31:22 +0000</pubDate>
      <link>https://dev.to/robre21/cachebusters-4hif</link>
      <guid>https://dev.to/robre21/cachebusters-4hif</guid>
      <description>&lt;p&gt;&lt;strong&gt;Let's talk about cache baby!&lt;/strong&gt; In this post, you will get all information about caching methods and patterns which match with your laravel app. Caching is a great aspect. Deal with it and implement it now.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I will also add all sources, interesting links, and videos so you can learn much more about the magic of caching in laravel.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/l2Sqc3POpzkj5r8SQ/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/l2Sqc3POpzkj5r8SQ/giphy.gif" alt="running fast"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  At first I will ask some question?
&lt;/h2&gt;

&lt;p&gt;How many files are required for one request in laravel?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Roundabout 218 files. I've found that answer in some older presentation, &lt;a href="https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole" rel="noopener noreferrer"&gt;https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That is huge stuff to answer only one request. I know the answer is not so easy, it depends on your used laravel version and the setup, but the answer is enough to get a feeling! Don't waste the time of your visitors, save them. They are searching for information. Bring up your information fast, nobody wants to wait.&lt;/p&gt;

&lt;h2&gt;
  
  
  You have also no time?
&lt;/h2&gt;

&lt;p&gt;Then take some short way. Drink a coffee and implement the laravel coffee cache.&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/linslin" rel="noopener noreferrer"&gt;
        linslin
      &lt;/a&gt; / &lt;a href="https://github.com/linslin/laravel-coffee-cache" rel="noopener noreferrer"&gt;
        laravel-coffee-cache
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      ☕ File based lever out cache for laravel. This cache hook in before composer autoload and Laravel boostrapping. It will push your application into light speed.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;☕ laravel-coffee-cache&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://packagist.org/packages/linslin/laravel-coffee-cache" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/fd40ac7750324ba45f301cd0fbbf8de34551e8ad4000bcbf7efca99f06adb0a4/68747470733a2f2f706f7365722e707567782e6f72672f6c696e736c696e2f6c61726176656c2d636f666665652d63616368652f646f776e6c6f616473" alt="Total Downloads"&gt;&lt;/a&gt;
&lt;a href="https://packagist.org/packages/linslin/laravel-coffee-cache" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/d49171fe9747ce0f32150939e61d7d2cd55d1f9b5e8b4140a112aabe5e222bca/68747470733a2f2f706f7365722e707567782e6f72672f6c696e736c696e2f6c61726176656c2d636f666665652d63616368652f6c6963656e7365" alt="License"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Store based lever out view cache for &lt;strong&gt;Laravel 4.x, 5.x 6.x, 7.x, 8.x, 9.x and 10.x&lt;/strong&gt;. This cache hook in before composer autoload and
Laravel bootstrapping. It will push your application into light speed. By default, all GET-Requests will be cached.&lt;/p&gt;
&lt;p&gt;It's a coffee cache. You can drink more coffee instead of spending time to optimize your application or server
environment. Mokka Mokka!&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why and when should I use laravel-coffee-cache?&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Laravel getting bigger and bigger over the years. Today laravel is a very nice framework which helps you to speed up your
software development and programming in its best way. On the other hand laravel is slow in handling requests and consumes
a lot of memory per request, even if you use View or Database caches. The bootstrapping of laravel takes a bit time
also it consumes a lot of memory. E.g. if you want to render…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/linslin/laravel-coffee-cache" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;link: ☕ &lt;a href="https://github.com/linslin/laravel-coffee-cache" rel="noopener noreferrer"&gt;https://github.com/linslin/laravel-coffee-cache&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you have time and you will digging deeper than the next explanations are for you.&lt;/p&gt;

&lt;h1&gt;
  
  
  the request
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;The beginning of each good journey starts with some https ... request!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Someone on this globe is visiting your page (hopefully built with laravel), then boom over 200 files are called to pass the framework and answer the request.&lt;/p&gt;

&lt;p&gt;The request passed by routes, logic, views, controllers &amp;amp; all the magic inside your laravel app.&lt;/p&gt;

&lt;p&gt;At the end of &lt;strong&gt;each&lt;/strong&gt; request, all is passed but required to answer only one simple user request. All that "magic" steps take time. The request journey is called the "lifecycle".&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Time is like a ghost and now you will learn how you can cache them. Be an cachebuster. &lt;strong&gt;Don't repeat&lt;/strong&gt; the same queries on &lt;strong&gt;each&lt;/strong&gt; request, you know don't repeat yourself &lt;strong&gt;use cache instead&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  lifecycle
&lt;/h2&gt;

&lt;p&gt;For understanding a request it is every time a great idea if you are looking for some diagrams or explanations "laravel lifecycle" is a great keyword. Here some short compressed overview.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you are searching for laravel lifecycle or take a breath of the fantastic documentation you can find more concrete stuff: &lt;a href="https://laravel.com/docs/7.x/lifecycle" rel="noopener noreferrer"&gt;https://laravel.com/docs/7.x/lifecycle&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  The short way (laravel request lifecycle):
&lt;/h3&gt;

&lt;p&gt;It is an MVC-Framework.&lt;/p&gt;

&lt;p&gt;1) Your laravel app got some user requests.&lt;br&gt;
2) Over public/index.php &amp;amp; the web.php, the route is called.&lt;br&gt;
3) The route calls the controller, he is acting with models (database) &amp;amp; data (files).&lt;br&gt;
4) All collected data are passed to the view.&lt;/p&gt;

&lt;p&gt;That is the short explanation.&lt;br&gt;
Now the longer one:&lt;/p&gt;
&lt;h3&gt;
  
  
  The detailed perspective
&lt;/h3&gt;

&lt;p&gt;1) Request&lt;br&gt;
2) public/index.php&lt;br&gt;
3) Autoload&lt;br&gt;
4) Load App&lt;br&gt;
5) Http Kernel&lt;br&gt;
6) Bootstrap&lt;br&gt;
7) Register Service Providers&lt;br&gt;
8) Boot Service Providers&lt;br&gt;
9) Middleware&lt;br&gt;
10) Dispatch by router&lt;br&gt;
11) Routes Match&lt;br&gt;
12) Controller&lt;br&gt;
13) Response&lt;br&gt;
14) Terminate middleware&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2F549sDDI.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2F549sDDI.png" alt="livecycle"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://blog.albert-chen.com/the-integration-of-laravel-with-swoole-part-1/" rel="noopener noreferrer"&gt;https://blog.albert-chen.com/the-integration-of-laravel-with-swoole-part-1/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I think it is clear. All that stuff needs time. If you are using some caching pattern the request can answer faster, because some steps are skipped for a specified time.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It is like you save some phone numbers in your phone. You don't need to think about all the numbers, you can call directly. The workflow is short. Or you can think vice versa if someone is calling you and you see directly her or his name.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  What is caching and why you should use it?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Caching [...] is a software component that stores data so that future requests for that data can be served faster; the data stored in a cache might be the result of an earlier computation or a copy of data stored elsewhere. A cache hit occurs when the requested data can be found in a cache, while a cache miss occurs when it cannot. &lt;strong&gt;Cache hits are served by reading data from the cache, which is faster than recomputing a result&lt;/strong&gt; or reading from a slower data store; &lt;strong&gt;thus, the more requests that can be served from the cache, the faster the system performs.&lt;/strong&gt;, &lt;a href="https://en.wikipedia.org/wiki/Cache_(computing)" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Cache_(computing)&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;SpeedUp your page (from 472ms to 284ms) ...&lt;/li&gt;
&lt;li&gt;Reduce the load &lt;/li&gt;
&lt;li&gt;Fewer queries&lt;/li&gt;
&lt;li&gt;faster results&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The target is to get most data directly from cache instead of databases.&lt;/p&gt;
&lt;h2&gt;
  
  
  caching behavior
&lt;/h2&gt;

&lt;p&gt;At first there exist different caching ideas &amp;amp; patterns.&lt;br&gt;
You can cache the whole rendered output (the whole dom of your page) or you can decide to cache only database queries or you activate the route cache.&lt;/p&gt;

&lt;p&gt;Then you can also decide where you want to save your cache.&lt;/p&gt;

&lt;p&gt;I will show you all possibilities.&lt;/p&gt;

&lt;p&gt;Let's start with&lt;/p&gt;
&lt;h1&gt;
  
  
  Cache Routing
&lt;/h1&gt;

&lt;p&gt;Route Caching exist since laravel 5.&lt;br&gt;
Route caching just caches the translation of incoming requests to controller action not the actual data or response from the controller.&lt;/p&gt;

&lt;p&gt;Artisan commands enter in your CLI:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="c1"&gt;// creates a serialized result of your route.php&lt;/span&gt;
&lt;span class="n"&gt;php&lt;/span&gt; &lt;span class="n"&gt;artisan&lt;/span&gt; &lt;span class="n"&gt;route&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="n"&gt;cache&lt;/span&gt;

&lt;span class="c1"&gt;// clear the route cache file, use it if you have changed routes.php&lt;/span&gt;
&lt;span class="n"&gt;php&lt;/span&gt; &lt;span class="n"&gt;artisan&lt;/span&gt; &lt;span class="n"&gt;route&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="n"&gt;clear&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Quicknote:&lt;br&gt;
The artisan route:cache command serializes the results of the route.php&lt;br&gt;
Routes are parsed from the cached file, not the routes file.&lt;/p&gt;

&lt;p&gt;Read more here: &lt;a href="https://mattstauffer.com/blog/laravel-5.0-route-caching/" rel="noopener noreferrer"&gt;https://mattstauffer.com/blog/laravel-5.0-route-caching/&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Caching eloquent queries
&lt;/h1&gt;
&lt;h2&gt;
  
  
  Cache driver(s)
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Take a look at .env&lt;/span&gt;
&lt;span class="no"&gt;CACHE_DRIVER&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;file&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Also, possible cache_drivers are: Memcached, Redis, Database, File, Array&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;
&lt;span class="cm"&gt;/* 
use this to put something into your cache
key = you should set some unique name to identify,
if you have multiple apps that write in your cache storage use also prefixes.

value = the cached, use closures to put for example eloquent stuff in the cache

duration = how long the cache should stay, 
the unit depends on laravel version (ms, s)

*/&lt;/span&gt;
&lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;put&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'someUniqueKey'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'value'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 

&lt;span class="c1"&gt;// here with remember &amp;amp; closure&lt;/span&gt;

&lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;remember&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nc"&gt;Posts&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;all&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="c1"&gt;// read the cache by key&lt;/span&gt;

&lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// check and read from cache or put&lt;/span&gt;

&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;has&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;)){&lt;/span&gt;
    &lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;put&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$cachedStuff&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// forget all cached stuff by key&lt;/span&gt;

&lt;span class="nc"&gt;Cache&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="nf"&gt;forget&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'allPosts'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or clear the cache via CLI&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="n"&gt;php&lt;/span&gt; &lt;span class="n"&gt;artisan&lt;/span&gt; &lt;span class="n"&gt;cache&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;&lt;span class="n"&gt;clear&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h1&gt;
  
  
  Timing comparisons
&lt;/h1&gt;

&lt;p&gt;Some interesting article about caching &amp;amp; timing Memcache vs Redis.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://scotch.io/tutorials/caching-in-laravel-with-speed-comparisons#toc-results-recommendation" rel="noopener noreferrer"&gt;https://scotch.io/tutorials/caching-in-laravel-with-speed-comparisons#toc-results-recommendation&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Testing
&lt;/h1&gt;

&lt;p&gt;You can use for example the postman browser extension to test and track your caching mechanism and timing.&lt;/p&gt;
&lt;h1&gt;
  
  
  Learn more / code more / read more
&lt;/h1&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/larashout" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F156633%2Fc518af42-daee-4e75-8633-c35a4e0aef98.jpg" alt="larashout"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/larashout/laravel-clear-cache-using-artisan-command-4f6m" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Laravel Clear Cache Using Artisan Command&lt;/h2&gt;
      &lt;h3&gt;LaraShout ・ May 13 '19&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#laravelclearcache&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;h1&gt;
  
  
  Videos
&lt;/h1&gt;

&lt;p&gt;learn how to set up and use config cache&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/LA2jgtAn4Sc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;cache eloquent queries&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/JhKngeE0XJA"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;cache with Redis&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/zCMypIqZQzo"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;cache how to measure the duration&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/bQBNAPN0iU0"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Sources and links which help to learn more:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.google.com/amp/s/www.cloudways.com/blog/integrate-laravel-cache/amp/" rel="noopener noreferrer"&gt;https://www.google.com/amp/s/www.cloudways.com/blog/integrate-laravel-cache/amp/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole" rel="noopener noreferrer"&gt;https://www.slideshare.net/chtalbert/the-integration-of-laravel-with-swoole&lt;/a&gt;&lt;br&gt;
&lt;a href="https://laravel.com/docs/4.2/cache" rel="noopener noreferrer"&gt;https://laravel.com/docs/4.2/cache&lt;/a&gt;&lt;br&gt;
&lt;a href="https://mattstauffer.com/blog/laravel-5.0-route-caching/" rel="noopener noreferrer"&gt;https://mattstauffer.com/blog/laravel-5.0-route-caching/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://medium.com/swlh/cache-eloquent-queries-in-laravel-6-af722c09a6f7" rel="noopener noreferrer"&gt;https://medium.com/swlh/cache-eloquent-queries-in-laravel-6-af722c09a6f7&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.mindtwo.de/blog/laravel-cache-bessere-web-performance" rel="noopener noreferrer"&gt;https://www.mindtwo.de/blog/laravel-cache-bessere-web-performance&lt;/a&gt;&lt;br&gt;
&lt;a href="https://vegibit.com/laravel-cache-tutorial/" rel="noopener noreferrer"&gt;https://vegibit.com/laravel-cache-tutorial/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://scotch.io/tutorials/caching-in-laravel-with-speed-comparisons" rel="noopener noreferrer"&gt;https://scotch.io/tutorials/caching-in-laravel-with-speed-comparisons&lt;/a&gt;&lt;br&gt;
&lt;a href="https://laravel-news.com/page-cache" rel="noopener noreferrer"&gt;https://laravel-news.com/page-cache&lt;/a&gt;&lt;br&gt;
&lt;a href="https://stackoverflow.com/questions/59073842/laravel-how-to-cache-route-for-5-minutes" rel="noopener noreferrer"&gt;https://stackoverflow.com/questions/59073842/laravel-how-to-cache-route-for-5-minutes&lt;/a&gt;&lt;br&gt;
&lt;a href="https://stackoverflow.com/questions/59073842/laravel-how-to-cache-route-for-5-minutes#comment104385474_59073842" rel="noopener noreferrer"&gt;https://stackoverflow.com/questions/59073842/laravel-how-to-cache-route-for-5-minutes#comment104385474_59073842&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.spatie.be/laravel-permission/v3/advanced-usage/cache/" rel="noopener noreferrer"&gt;https://docs.spatie.be/laravel-permission/v3/advanced-usage/cache/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://voltagead.com/practical-object-caching-in-laravel/" rel="noopener noreferrer"&gt;https://voltagead.com/practical-object-caching-in-laravel/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://freek.dev/1351-caching-the-entire-response-of-a-laravel-app" rel="noopener noreferrer"&gt;https://freek.dev/1351-caching-the-entire-response-of-a-laravel-app&lt;/a&gt;&lt;br&gt;
&lt;a href="https://blog.albert-chen.com/the-integration-of-laravel-with-swoole-part-1/" rel="noopener noreferrer"&gt;https://blog.albert-chen.com/the-integration-of-laravel-with-swoole-part-1/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>laravel</category>
      <category>cache</category>
      <category>performance</category>
      <category>php</category>
    </item>
  </channel>
</rss>
