mcpField
B
batch-processing-jobs

batch-processing-jobs

github.com/aj-geddes開発373475 回インストール34 週間前に更新
リポジトリ

batch-processing-jobs について

大規模データ、定期処理、非同期タスク向けのバッチ処理システムを構築するスキルです。キュー、ワーカー、スケジューラーの例を含みます。

主な機能

  1. 01Bull Queue と Celery 形式の例
  2. 02Cron スケジューラーのガイド
  3. 03リトライとデッドレターキュー
  4. 04ジョブの優先度と監視

活用シーン

  1. 01大規模データセットの処理
  2. 02定期レポートの生成
  3. 03ETL とデータ転送の実行
  4. 04一括更新やクリーンアップ処理

インストール

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

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill batch-processing-jobs

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
bull-queue-nodejs.md
celery-style-worker-python.md
cron-job-scheduler.md
scripts/
validate-pipeline.sh
templates/
pipeline.yaml

詳細

バッチ処理ジョブ

目次

概要

大規模なデータ処理、スケジュールされたタスク、非同期操作を効率的に処理する、スケーラブルなバッチ処理システムを実装します。

使用する場面

  • 大規模なデータセットの処理
  • スケジュールされたレポートの生成
  • メール/通知キャンペーン
  • データのインポートとエクスポート
  • 画像/動画の処理
  • ETL パイプライン
  • クリーンアップとメンテナンスタスク
  • 長時間実行される計算
  • データの一括更新

クイックスタート

最小限の動作例:

import Queue from "bull";
import { v4 as uuidv4 } from "uuid";

interface JobData {
  id: string;
  type: string;
  payload: any;
  userId?: string;
  metadata?: Record<string, any>;
}

interface JobResult {
  success: boolean;
  data?: any;
  error?: string;
  processedAt: number;
  duration: number;
}

class BatchProcessor {
  private queue: Queue.Queue<JobData>;
  private resultQueue: Queue.Queue<JobResult>;

  constructor(redisUrl: string) {
    // Main processing queue
// ... (see reference guides for full implementation)

リファレンスガイド

詳細な実装については、references/ ディレクトリを参照してください。

ガイド内容
Bull Queue (Node.js)Bull Queue (Node.js)
Celery-Style Worker (Python)Celery-Style Worker (Python)
Cron Job SchedulerCron Job Scheduler

ベストプラクティス

✅ 推奨事項
  • すべてのジョブに冪等性を実装する
  • 分散処理にはジョブキューを使用する
  • ジョブの成功率/失敗率を監視する
  • 指数バックオフによるリトライロジックを実装する
  • 適切なタイムアウトを設定する
  • ジョブの実行詳細をログに記録する
  • 失敗したジョブにはデッドレターキューを使用する
  • ジョブに優先度レベルを実装する
  • 類似する操作をまとめてバッチ処理する
  • コネクションプーリングを使用する
  • グレースフルシャットダウンを実装する
  • キューの深さと処理時間を監視する
❌ 避けるべき事項
  • リクエストハンドラー内でジョブを同期処理する
  • 失敗したジョブを無視する
  • リトライ回数を無制限に設定する
  • 監視とアラートを省略する
  • タイムアウトなしでジョブを処理する
  • 大きなペイロードをキューに保存する
  • 完了したジョブのクリーンアップを忘れる

コメント