メインコンテンツへ移動

Workers

使用パターンとデプロイ構成については、Workersを参照してください。

環境変数
環境変数への直接リンク

MASTRA_WORKERS
mastra_workersへの直接リンク

現在のプロセスで起動する workers を制御します。

動作
(未設定)設定に基づいてデフォルトの workers を自動作成
"false"worker のイベント処理を無効にします。プロセスは HTTP リクエストを処理し、イベントを消費せずに PubSub へイベント(Workflow の開始など)を発行できます。
"orchestration"orchestration worker のみを起動
"scheduler"scheduler worker のみを起動
"backgroundTasks"background task worker のみを起動
"orchestration,scheduler"複数の workers(カンマ区切り)

同じビルドアーティファクトから、異なる worker タイプを別々のコンテナで実行する場合に使用します。

MASTRA_STEP_EXECUTION_URL
mastra_step_execution_urlへの直接リンク

API サーバーのベース URL です。orchestration worker が Workflow のステップをリモート実行するために使用します。orchestration worker を API とは別のプロセスで実行する場合に必須です。

MASTRA_STEP_EXECUTION_URL=http://api:4111/api

本番環境では HTTPS URL を使用してください。セキュリティに関する推奨事項を参照してください。

orchestration worker は、次の URL にステップ実行リクエストを送信します。

${MASTRA_STEP_EXECUTION_URL}/workflows/:workflowId/runs/:runId/steps/execute

MASTRA_WORKER_AUTH_TOKEN
mastra_worker_auth_tokenへの直接リンク

orchestration worker が API のステップ実行エンドポイントを呼び出す際に送信する bearer トークンです。API に設定された認証 Provider がこのトークンを認識する必要があります。Worker 認証を参照してください。

MASTRA_WORKER_AUTH_TOKEN=sk-worker-secret-token

Worker の種類
Worker の種類への直接リンク

OrchestrationWorker
OrchestrationWorkerへの直接リンク

PubSub の workflows トピックから Workflow イベントを処理します。pull subscription が設定された @mastra/redis-streams@mastra/google-cloud-pubsub など、pull 対応の PubSub が必要です。

  • 名前orchestration
  • PubSub トピックworkflows
  • Consumer groupmastra-orchestration

SchedulerWorker
SchedulerWorkerへの直接リンク

実行期限を迎えた cron schedules をストレージからポーリングし、workflow.start イベントを発行します。

  • 名前scheduler
  • 単一インスタンスのみ:重複実行を避けるため、必ず1つのインスタンスだけを実行してください

BackgroundTaskWorker
BackgroundTaskWorkerへの直接リンク

Agent から送られたバックグラウンド Tool 呼び出しを実行します。

  • 名前backgroundTasks
  • PubSub トピックbackground-tasks
  • Consumer groupbackground-task-workers
  • 複数レプリカをサポート:各インスタンスで Consumer group を共有します

サポートされるストレージバックエンド
サポートされるストレージバックエンドへの直接リンク

すべての worker タイプを実行するデプロイには、workflowsbackgroundTasksschedules ドメインを実装したストレージバックエンドが必要です。特に SchedulerWorker には schedules ドメインが必要です。スケジュールされた Workflows を使用しない場合、このドメインがないバックエンドでも orchestration と background tasks をサポートできます。次のバックエンドは3つすべてをサポートします。

バックエンドパッケージ
PostgreSQL@mastra/pg
LibSQL@mastra/libsql
MySQL@mastra/mysql
MongoDB@mastra/mongodb
Spanner@mastra/spanner
Convex@mastra/convex

その他のストレージバックエンド(Upstash、DynamoDB、Cloudflare D1、ClickHouse、Redis)は Workflows と一部の worker 機能をサポートしていますが、schedules ドメインがありません。scheduler をデプロイしない場合は、orchestration worker と background task worker に引き続き使用できます。