Skip to content

DailyArticleTemplate パフォーマンス計測ガイド

このドキュメントでは、DailyArticleTemplateのパフォーマンスを計測する方法を説明します。

📊 計測方法

🚀 方法1: REST API経由での自動計測(推奨)

最も簡単で確実な方法です。チャット上やターミナルから実行できます。

基本的な使い方

bash
# デフォルト(最新日付、2ホール)
bash scripts/run-performance-test.sh

# 日付を指定
bash scripts/run-performance-test.sh "2024-11-01"

# ホールを指定(1店舗)
bash scripts/run-performance-test.sh "" "アイランド秋葉原"

# ホールを指定(3店舗)
bash scripts/run-performance-test.sh "" "アイランド秋葉原,エスパス秋葉原,ビッグアップル秋葉原"

# 日付とホールの両方を指定
bash scripts/run-performance-test.sh "2024-11-01" "アイランド秋葉原,エスパス秋葉原"

出力例

=== DailyArticleTemplate Performance Measurement ===

API URL: http://slotkouryaku.local/wp-json/daily-article/v1/performance-measurement?...

Executing...

✓ Measurement completed successfully!

=== Parameters ===
Date:  2026-01-10
Halls: アイランド秋葉原,エスパス秋葉原

=== Performance Results ===
Query Count:     12
Execution Time:  0.0235s
Memory Usage:    1.25MB
Output Length:   15234 bytes

=== TOP 5 Slowest Queries ===
1. Time: 0.0089s
   Query: SELECT * FROM wp_db2023 WHERE kishu IN ('北斗の拳', 'バイオハザード') AND...

2. Time: 0.0067s
   Query: SELECT * FROM wp_link_day ORDER BY year DESC, month DESC, day DESC...

(以下略)

使用されるファイル

  • scripts/run-performance-test.sh - 実行スクリプト
  • core_src/Handler/performance_measurement_handler/PerformanceMeasurementHandler.php - REST APIハンドラー
  • core_src/Util/query_profiler/QueryProfiler.php - 計測ユーティリティ

📝 方法2: ショートコード経由での計測(WordPress投稿内で実行)

WordPressの投稿やページにショートコードを挿入して、パフォーマンス計測結果を直接表示できます。

基本的な使い方

[daily_article_performance]

パラメータ指定

[daily_article_performance date="2024-11-01"]
[daily_article_performance halls="アイランド秋葉原,エスパス秋葉原"]
[daily_article_performance date="2024-11-01" halls="アイランド秋葉原,エスパス秋葉原"]

パラメータ説明

パラメータ説明デフォルト値必須
date計測対象の日付(YYYY-MM-DD)最新日付(自動取得)いいえ
halls計測対象のホール(カンマ区切り)アイランド秋葉原,エスパス秋葉原いいえ

出力内容

  • パラメータ(日付、ホール)
  • パフォーマンス結果(クエリ数、実行時間、メモリ使用量、出力長)
  • TOP 5 最も遅いクエリ

使用例

  1. WordPress管理画面で投稿を編集
  2. ショートコードを挿入: [daily_article_performance]
  3. 投稿を公開またはプレビュー
  4. 計測結果がHTML形式で表示される

注意事項

  • 管理画面では何も表示されません(フロントエンドのみ)
  • SAVEQUERIESが有効化されている必要があります(wp-config.php)
  • 計測結果はHTML形式で表示されます

🌐 方法3: ブラウザでの手動計測

実際のページをブラウザで開いて、開発者ツールを使用して計測する方法です。

手順概要

  1. Chrome DevToolsを開く(F12)
  2. Networkタブで「Disable cache」をチェック
  3. Consoleタブで計測用コードを実行
  4. パフォーマンスデータを記録

⚙️ 事前準備

SAVEQUERIESの有効化(必須)

DBクエリ数を計測するには、wp-config.phpに以下を追加する必要があります:

php
define('SAVEQUERIES', true);

注意: 本番環境では必ず無効化してください。パフォーマンスに影響します。


📈 計測結果の見方

主要指標

指標説明目標値(2ホール)
Query CountDBクエリ数15以下
Execution Time実行時間0.05秒以下
Memory Usageメモリ使用量2MB以下

計測パターン

以下のパターンで計測することを推奨します:

パターン日付ホール数期待クエリ数
Pattern 1最新日付110-12
Pattern 2最新日付212-15
Pattern 3最新日付315-18

🔧 トラブルシューティング

Query Countが0になる

原因: SAVEQUERIESが有効化されていない

解決方法: wp-config.phpdefine('SAVEQUERIES', true); を追加

REST APIがアクセスできない

原因: パーマリンク設定が更新されていない、またはRewriteルールが正しくない

解決方法:

  1. WordPress管理画面 → 設定 → パーマリンク
  2. 「変更を保存」をクリック(設定を変更しなくてもOK)
  3. 再度アクセスしてみる

curlコマンドが使えない

解決方法: ブラウザで直接アクセス

http://slotkouryaku.local/wp-json/daily-article/v1/performance-measurement?halls=アイランド秋葉原,エスパス秋葉原