每次點擊路線時都等待大型資料集進行計算真是太糟糕了!而且用戶不想等待,現在每個人的保留時間都很短,所以我們幾年前就透過使用快取修復了這個問題。 Laravel 有一個 Cache Fascad 來幫助我們快取數據,我們一直在使用 Cache::remember(),這是一個很好的方法來快取一些資料一段時間直到它們過期。
但在最近的活動中,Laravel 宣布了 Cache Fascad 中即將推出的新功能,稱為「靈活」。它在背景使用了laravel新的defer()函數。
Cache::flexible() 與我們已經熟悉的 Cache::remember() 非常相似,程式碼變化很少,但對效能影響很大。與 Cache::remember().
不同,您提供兩個時間值而不是 1
如果您傳遞5 和10 作為Cache::flexible() 的時間範圍,那麼當用戶第一次點擊或訪問該路線時,用戶必須等待這些值被緩存,並且在5 秒內繼續點擊路線時那麼它只傳回與Cache::remember() 相同的快取值。但有趣的是,如果用戶在5 到10 秒的時間範圍內(如我們提供的)點擊路線,那麼Laravel 仍將在該時間範圍內提供第一次訪問的緩存值,並啟動後台工作程序再次緩存這些值。當用戶再次訪問該路線時,他會獲取刷新數據,但這次無需等待數據被緩存或計算,這與 Cache::remember().
這對你們中的一些人來說可能很難理解,我建議閱讀我在更詳細的部分和現實生活中的例子寫的這篇文章:https://laraveleco.com/cache-flexible- method-of-laravel /
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3