mcpField
L
laravel-performance-caching

laravel-performance-caching

github.com/noartem開発1376 回インストール3 週間前に更新
リポジトリ

laravel-performance-caching について

Laravel のフレームワークキャッシュ、値、クエリ結果を扱う開発スキルです。キーや有効期限、無効化、タグによる戦略を取り上げ、鮮度と正確性の両立を支援します。

主な機能

  1. 01フレームワークのルートや設定をキャッシュ
  2. 02値とクエリ結果を保存
  3. 03有効期限の設定
  4. 04安定したスコープ付きキーの使用
  5. 05タグで関連エントリーを無効化

活用シーン

  1. 01投稿の検索結果をキャッシュ
  2. 02テナントやロケール別のクエリ結果をキャッシュ
  3. 03書き込み後に関連キャッシュを削除

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/noartem/skills --skill laravel-performance-caching

インストール後、Claude Code で/laravel-performance-cachingを入力して読み込まれたか確認します。

詳細

キャッシュの基本

フレームワークのキャッシュ

php artisan route:cache
php artisan config:cache
php artisan view:cache

デプロイ時に必要に応じて、対応するclearコマンドでクリアしてください。

値とクエリ

Cache::remember("post:{$id}", 600, fn () => Post::findOrFail($id));
  • 最新性の要件に応じて TTL を選択します
  • 正確性が重要な場合は、書き込み時に明示的に無効化します

パターンと戦略

// Stable keys and scopes (e.g., tenant, locale)
Cache::remember("tenant:{$tenantId}:users:index:page:1", now()->addMinutes(5), function () {
    return User::with('team')->paginate(50);
});

// Tags (supported drivers) for grouped invalidation
Cache::tags(['users'])->remember('users.index.page.1', now()->addMinutes(5), fn () => ...);
Cache::tags(['users'])->flush();

// Locks to ensure exclusive expensive work
Cache::lock('reports:daily', 30)->block(5, function () {
    generateReports();
});
  • 安定した名前空間付きキーを使い、スコープを指定する要素があれば含めます
  • サンダリングハードを防ぐため、remember()を優先します
  • (サポートされている場合は)キャッシュタグを使って、関連するエントリーをまとめて無効化します
  • 計画なしに、動的なデータやユーザー固有のデータをキャッシュすることは避けます
  • キャッシュされたコードの近くに、無効化のトリガーを記載します

コメント