「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Laravel の新しい Cache::flexible()

Laravel の新しい Cache::flexible()

2024 年 11 月 8 日に公開
ブラウズ:942

The new Cache::flexible() of Laravel

ルートに到達するたびに大規模なデータセットの計算を待つのは大変です。そして、ユーザーは待ちたくありません。最近では誰もが保持期間を短くしています。そのため、私たちは何年も前にキャッシュを使用してこの問題を修正しました。 Laravel にはデータのキャッシュに役立つ Cache Fascad があり、有効期限が切れるまでの一定期間データをキャッシュする優れた方法である Cache::remember() を使用しています。

しかし、最近のイベントで、Laravel は Cache Fascad の「フレキシブル」と呼ばれる新しい機能を発表しました。バックグラウンドでlaravelの新しいdefer()関数を使用します。

Cache::flexible() の仕組み

Cache::flexible() は、すでによく知られている Cache::remember() に非常に似ており、コードの変更はほとんどありませんが、パフォーマンスに大きな影響を与えます。 Cache::remember().
とは異なり、時間に 1 つの値ではなく 2 つの値を指定します。 Cache::flexible() の時間枠として 5 と 10 を渡す場合、ユーザーが最初にルートをヒットまたは訪問したとき、ユーザーは値がキャッシュされるまで待機する必要があり、5 秒以内にルートをヒットし続けるときは、ユーザーは値がキャッシュされるまで待機する必要があります。その後、 Cache::remember() と同じようにキャッシュされた値を返すだけです。しかし、ここが興味深い部分です。ユーザーが(指定したように)5 ~ 10 秒の時間枠内でルートに到達した場合、Laravel は引き続きその時間枠内の最初の訪問に対してキャッシュされた値を提供し、値を再度キャッシュするためにバックグラウンド ワーカーを開始します。そして、ユーザーがルートに再度アクセスすると、更新データを取得しますが、今回は Cache::remember().

とは異なり、データがキャッシュされたり計算されたりするのを待つ必要はありません。

これは一部の人にとっては理解するのが難しいかもしれません。私がこれについてより深く、実際の例とともに書いたこの記事を読むことをお勧めします: https://laraveleco.com/cache-flexible-method-of-laravel /

リリースステートメント この記事は次の場所に転載されています: https://dev.to/kachkolasa/the-new-cacheflexible-of-laravel-265k?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3