Start Debugging

タグ: caching

7 件

期限切れの MemoryCache エントリはどうなるのか、そして実際にメモリから削除されるのはいつか
期限切れの MemoryCache エントリは、タイマーでは削除されません。読み取りが触れるか、スロットリングされたバックグラウンドスキャンが走るか、コンパクションが起動するまで、ディクショナリに残り続けます。それぞれがいつ起きるのか、そして積極的なエビクションを実現する方法を解説します。
ASP.NET Core のマルチテナントキャッシュ: Redis のキープレフィックス vs 別データベース vs 別インスタンス
ほとんどのマルチテナント ASP.NET Core アプリでは、共有 Redis 1 台にテナントのキープレフィックスを付ける方式を使い、契約上の分離やノイジーなワークロードがあるテナントだけを専用インスタンスに移してください。番号付きデータベースは避けましょう。Redis Cluster、Azure Managed Redis、Redis Cloud ではデータベース 0 しか使えません。
解決: ブラウザのタブをリロードしても Flutter web が古いキャッシュ済みビルドを返す
リロードで再検証されるのは index.html だけなので、ハッシュの付かない main.dart.js はブラウザキャッシュから読み込まれ続けます。Flutter のビルド出力には Cache-Control: no-cache を付け、ヘッダーを設定できないホストではビルド ID を埋め込み、3.41 より前のキャッシュは自己削除型の service worker に片付けさせます。
ASP.NET Core 11 における出力キャッシュとレスポンスキャッシュ:どちらを使うべきか
ASP.NET Core 11 では、ほぼすべてのサーバーサイドアプリにとって出力キャッシュが正しいデフォルトです。レスポンスキャッシュが勝るのは、HTTP ヘッダーを通じてブラウザーやプロキシのキャッシュを制御することが目的の場合だけです。ここでは機能マトリクスと、判断を左右する落とし穴とともに、その決定方法を示します。
ASP.NET Core 11 の Minimal API に出力キャッシュを追加する方法
ASP.NET Core 11 の Minimal API における出力キャッシュの完全な実践ガイド:AddOutputCache と UseOutputCache、エンドポイントと MapGroup での CacheOutput、名前付きポリシーとベースポリシー、Expire、VaryByQuery と VaryByHeader、EvictByTagAsync によるタグベースの無効化、キャッシュスタンピード対策、ETag による再検証、そして Redis バッキングストア。