Skip to main content
サンドボックスに アイドルタイムアウト を設定すると、アクティブな接続が検出されない場合に自動的に停止または一時停止できます。これにより、未使用のサンドボックスが無期限に実行され続けることを防ぎ、コストを削減できます。
アイドルタイムアウトは、サンドボックス作成時に metadata フィールドで設定します。キーは idle_timeout で、値は秒数(文字列)です。

基本的な使い方

サンドボックスを作成するときに、metadata オブジェクト内で idle_timeout キーを渡します。値はアイドルタイムアウトの期間を で表したもの(文字列)です。指定した期間、サンドボックスにクライアントが接続されていない場合、サンドボックスは自動的に kill または一時停止されます。

アイドルタイムアウトの仕組み

アイドルタイムアウト機能は、サンドボックスへのアクティブな接続を監視します。
  1. アクティブな接続がない場合 — サンドボックスの終了時刻が current_time + idle_timeout_seconds に設定されます。
  2. 接続が再びアクティブになった場合 — サンドボックスの終了時刻は、元の最大サンドボックス有効期間に戻されます。
  3. 再接続がないままアイドルタイムアウトが経過した場合 — サンドボックスは kill されます(autoPause が有効な場合は一時停止されます)。
つまり、少なくとも 1 つのアクティブなクライアントがサンドボックスに接続されている限り、サンドボックスは停止されません(例: Sandbox.connect() 経由、または開いている WebSocket/HTTP 接続)。

kill ではなく一時停止する

デフォルトでは、アイドル状態のサンドボックスはアイドルタイムアウトが期限切れになると kill されます。後で再開できるように、代わりにサンドボックスを 一時停止 したい場合は、autoPause オプションを有効にします。
autoPause が有効な場合、アイドルタイムアウト時にサンドボックスの状態は paused に遷移します。後で実行を再開するには、そのサンドボックスに connect できます。

他の metadata との組み合わせ

idle_timeout metadata キーは、すでに使用している他の metadata キーと組み合わせることができます。

タイムアウトの制約

idle_timeout を最小しきい値(30 秒)未満の値に設定した場合、そのサンドボックスではアイドルタイムアウト機能が サイレントに無効化 されます。サンドボックスは最大有効期間が切れるまで実行されます。

アイドルタイムアウトを無効にする

サンドボックスのアイドルタイムアウトを明示的に無効にするには、metadata から idle_timeout キーを省略するか、"0" に設定します。

一般的なユースケース

短時間の実行タスク

1 回限りのタスクを実行し、クライアントの切断後に保持する必要がないサンドボックスには、短いアイドルタイムアウトを使用します。

長時間実行されるインタラクティブセッション

ユーザーが一時的に離席する可能性があるインタラクティブセッションで使用されるサンドボックスには、より長いアイドルタイムアウトを使用します。
最終更新日 2026年8月10日