mcpField
B
backend-latency-profiler-helper

backend-latency-profiler-helper

github.com/patricio0312rev開発63263 回インストール41 週間前に更新
リポジトリ

backend-latency-profiler-helper について

バックエンドサービスのAPI遅延の原因を特定し、対処するためのスキルです。エンドポイントの計測、ログ分析、原因評価、優先順位付きの修正計画を扱います。

主な機能

  1. 01リクエスト遅延を計測
  2. 02ログから遅いエンドポイントを特定
  3. 03ボトルネックの原因候補を評価
  4. 04優先順位付きの修正計画を作成
  5. 05パフォーマンス監視を設定

活用シーン

  1. 01遅延しきい値を超えるエンドポイントを発見
  2. 02リクエストログでエンドポイント性能を比較
  3. 03データベースインデックスやN+1クエリの修正を計画

インストール

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

$npx skills add https://github.com/patricio0312rev/skills --skill backend-latency-profiler-helper

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

詳細

バックエンドレイテンシプロファイラーヘルパー

API のパフォーマンスボトルネックを特定し、解消します。

遅いエンドポイントの検出

// Middleware to track latency
app.use((req, res, next) => {
  const start = Date.now();

  res.on("finish", () => {
    const duration = Date.now() - start;

    if (duration > 1000) {
      logger.warn(
        {
          endpoint: req.path,
          method: req.method,
          duration_ms: duration,
          userId: req.user?.id,
        },
        "Slow request detected"
      );
    }
  });

  next();
});

特に遅いエンドポイント

-- Query from logs
SELECT
  endpoint,
  AVG(duration_ms) as avg_ms,
  MAX(duration_ms) as max_ms,
  COUNT(*) as requests
FROM request_logs
WHERE created_at > NOW() - INTERVAL '1 day'
GROUP BY endpoint
HAVING AVG(duration_ms) > 500
ORDER BY avg_ms DESC
LIMIT 10;

原因の疑い

interface PerformanceBottleneck {
  endpoint: string;
  avgLatency: number;
  suspectedCauses: string[];
  fixPriority: "high" | "medium" | "low";
}

const bottlenecks: PerformanceBottleneck[] = [
  {
    endpoint: "GET /api/users/:id",
    avgLatency: 2500,
    suspectedCauses: [
      "N+1 query fetching user orders",
      "No database index on user_id",
      "Expensive JSON serialization",
    ],
    fixPriority: "high",
  },
];

修正ロードマップ

# Performance Fix Roadmap

## Week 1: Quick Wins

- [ ] Add database indexes
- [ ] Enable response caching
- [ ] Fix N+1 queries

## Week 2: Medium Effort

- [ ] Optimize slow database queries
- [ ] Implement Redis caching
- [ ] Add connection pooling

## Week 3: Long-term

- [ ] Database query optimization
- [ ] Service decomposition
- [ ] CDN integration

出力チェックリスト

  • 遅いエンドポイントを特定済み
  • 原因を分析済み
  • 修正ロードマップを作成済み
  • モニタリングを設定済み ENDFILE

コメント