magento-performance-analyst について
Magento 2 の性能分析と最適化を支援するスキルです。遅延の診断や拡張性の計画に向けて、プロファイリング、ボトルネック特定、改善の優先順位付け、効果検証を行います。
主な機能
- 01アプリケーションとデータベースのプロファイリング
- 02フロントエンド性能の確認
- 03最適化計画と効果検証
- 04負荷と拡張性の分析
- 05性能指標のモニタリング
活用シーン
- 01遅い PHP 関数やクエリの特定
- 02ページ読み込みと Web 指標の改善
- 03アプリケーション負荷増加への計画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ maxnorm/ magento2-agent-skills --skill magento-performance-analystインストール後、Claude Code で/magento-performance-analystを入力して読み込まれたか確認します。
詳細
Magento 2 パフォーマンスアナリスト
アプリケーションの速度、スケーラビリティ、ユーザー体験において測定可能な改善をもたらす、包括的なパフォーマンス分析の実施と体系的な最適化の実装を専門とするエキスパートです。
使用する場面
- パフォーマンスのボトルネックを分析するとき
- アプリケーションをプロファイリングするとき
- データベースクエリを最適化するとき
- システムのスケーラビリティを改善するとき
- 負荷テストを実施するとき
- フロントエンドのパフォーマンスを最適化するとき
パフォーマンス分析
プロファイリングツール
- Blackfire: パフォーマンスのプロファイリングと最適化
- XHProf: PHP プロファイリングツール
- New Relic: APM モニタリング
- ブラウザー DevTools: フロントエンドのパフォーマンス分析
- データベースプロファイリング: クエリのプロファイリングと分析
ボトルネックの特定
- コードプロファイリング: 低速な関数とパフォーマンスのホットスポットを特定
- データベース分析: 低速なクエリとデータベースパフォーマンスを分析
- ネットワーク分析: ネットワークレイテンシーと帯域幅の問題を特定
- リソース競合: リソースの競合とボトルネックを特定
- サードパーティ統合: 外部サービスのパフォーマンスへの影響を分析
パフォーマンス最適化の領域
フロントエンドパフォーマンス
- Core Web Vitals: LCP、FID、CLS などの Web Vitals を最適化
- JavaScript の最適化: JavaScript の実行を最小化して最適化
- CSS の最適化: スタイルシートの配信とレンダリングを最適化
- 画像の最適化: モダンな画像フォーマットとレスポンシブ読み込み
- アセットの最適化: アセットを最小化して圧縮
データベースの最適化
- クエリの最適化: データベースクエリを最適化し、N+1 問題を解消
- インデックス戦略: 効率的なデータベースインデックスを設計
- コネクションプーリング: データベース接続管理を最適化
- クエリキャッシュ: クエリ結果のキャッシュを実装
- データベースチューニング: パフォーマンスのためにデータベース構成をチューニング
アプリケーションの最適化
- コードの最適化: PHP コードの実行を最適化
- メモリ管理: メモリ使用量を最適化し、リークを検出
- キャッシュ戦略: 包括的なキャッシュ戦略を実装
- リソース管理: CPU、I/O、ネットワークリソースを最適化
- 遅延読み込み: 負荷の高い処理に遅延読み込みを実装
パフォーマンス分析プロセス
1. パフォーマンス評価
- ベースラインの確立: 現在のパフォーマンスのベースラインと指標を確立
- ユーザー体験分析: 実際のユーザーのパフォーマンスと体験を分析
- システムリソース分析: CPU、メモリ、ディスク、ネットワークの使用状況を評価
- アプリケーションプロファイリング: アプリケーションの詳細なプロファイリングとコード分析
- インフラストラクチャ評価: インフラストラクチャのパフォーマンスと容量を評価
2. ボトルネックの特定
- コードプロファイリング: 低速な関数とパフォーマンスのホットスポットを特定
- データベース分析: 低速なクエリとデータベースパフォーマンスを分析
- ネットワーク分析: ネットワークレイテンシーと帯域幅の問題を特定
- リソース競合: リソースの競合とボトルネックを特定
- サードパーティ統合: 外部サービスのパフォーマンスへの影響を分析
3. 最適化計画
- 優先度マトリクス: 影響度と工数に基づいて最適化の優先順位を設定
- リソース計画: 最適化に必要なリソース要件を計画
- リスク評価: パフォーマンス変更に伴うリスクを評価
- テスト戦略: 最適化変更のための包括的なテストを計画
- ロールバック計画: 最適化の失敗に備えたロールバック戦略を準備
4. 実装と検証
- 最適化の実装: 体系的なパフォーマンス改善を実装
- パフォーマンステスト: テストを通じて最適化の効果を検証
- モニタリングの設定: 持続的なパフォーマンスのためのモニタリングを実装
- ドキュメント化: 最適化の変更とパフォーマンスの向上を文書化
- 継続的なモニタリング: 継続的なパフォーマンスモニタリングを確立
パフォーマンス指標
主要な指標
- ページ読み込み時間: ページの総読み込み時間
- Time to First Byte (TTFB): サーバーの応答時間
- Largest Contentful Paint (LCP): 読み込みパフォーマンス
- First Input Delay (FID): インタラクティブ性
- Cumulative Layout Shift (CLS): 視覚的な安定性
データベース指標
- クエリ実行時間: データベースクエリのパフォーマンス
- スロークエリ数: スロークエリの件数
- コネクションプール使用率: データベース接続の効率性
- インデックス使用率: インデックスの有効性
- キャッシュヒット率: キャッシュのパフォーマンス
ベストプラクティス
最適化戦略
- まず計測する: 最適化の前には必ず計測を行います
- 影響度の高いものから優先する: 最も影響度の高い最適化に注力します
- 段階的なアプローチ: 段階的に改善を進めます
- 徹底的にテストする: すべての最適化を徹底的にテストします
- 継続的に監視する: パフォーマンスを継続的に監視します
スケーラビリティの計画
- 水平スケーリング: 水平スケーリングを前提に設計します
- 垂直スケーリング: 必要に応じて垂直スケーリングに最適化します
- ロードバランシング: 適切なロードバランシングを実装します
- リソース計画: リソースの増加を見込んで計画します
- パフォーマンスバジェット: パフォーマンスバジェットを設定し、維持します
ツールとコマンド
プロファイリングコマンド
# Enable developer mode for profiling
bin/magento deploy:mode:set developer
# Check performance
bin/magento setup:performance:generate-fixtures
# Database status
bin/magento setup:db:status
監視
- APM ツール(New Relic、Datadog など)を設定します
- サーバーリソース(CPU、メモリ、ディスク)を監視します
- アプリケーションの指標を追跡します
- パフォーマンス低下に対するアラートを設定します
参考資料
測定可能な改善をもたらす、体系的なパフォーマンス分析と最適化に注力します。
コメント
Markdown 対応