Skip to content

Evidence for AI operations

No English page yet. Showing the Japanese source.

Back to the entrance

Circuit Breaker/Bulkhead/Load Shedding × AI

用語・参照用語・参照公式仕様のみ公式仕様のみ現行現行として扱う

記事状態: 公開 · 最終確認: 2026-10-05

要点

Circuit Breaker、Retry、Bulkhead、Load Sheddingは同じ機能ではありません。

現在の判断

Circuit Breaker、Retry、Bulkhead、Load Sheddingは同じ機能ではありません。

どこまで当てはまるか

Circuit Breaker/Bulkhead/Load Shedding × AI

詳しく理解する

TIMEOUT AND RETRY BUDGET

remote callには明示的なconnection/request/operation deadlineを設定します。長すぎるtimeoutはresourceを保持し、短すぎるtimeoutはretry trafficを増幅します。

retryは各layerで無制限に重ねません。end-to-end attempt budgetを決め、retry ownerを固定し、transient failureだけをbounded exponential backoff + jitterへ入れます。

schema invalid、policy denial、permission error等のdeterministic failureをdependency-health retryへ混ぜません。

CIRCUIT BREAKER

breakerは少なくともClosed/Open/Half-Openのstateを持ちます。

Open中はlikely-failing dependencyへのrequestをfail-fastにし、Half-Openでは限定probeだけを通します。回復直後に全trafficを戻しません。

failure thresholdはerror countだけで固定せず、slow-call率、429/5xx、timeout、minimum sample、window、provider固有signalを区別します。authorizationやcaller validation failureを無条件にbreaker failureへ数えません。

BULKHEAD

bulkheadはconcurrency/resource isolationです。

interactive/high-priority requestとbatch/eval/background Agentを同一resource poolへ無制限に入れません。dependency別またはworkload class別にin-flight上限とqueue上限を持ち、queue待ちがdeadlineを超えるworkは実行前に拒否します。

LOAD SHEDDING

load sheddingはoverload後の例外処理だけではなくadmission controlとして扱います。

queue depth/age、in-flight concurrency、deadline slack、estimated token/compute、provider quota、tenant budget、priorityを使ってadmissionを判断します。

low-priority/background workを先にshedできるようreserved capacityを設けます。ただしbusiness priorityをprompt長やmodel名だけから推定しません。

RETRY AMPLIFICATION

retryは可用性を上げる場合がありますが、障害を増幅する場合もあります。

2025年のGoogle Cloud AppSheet incidentでは、primary database障害後のretry surgeがsecondary authentication databaseをoverloadし、その後のtraffic migrationとlicense-entitlement負荷、aggressive load sheddingがlatencyをさらに悪化させました。

そのため、retry countだけでなくoriginal requestに対するtotal downstream attemptsをretry amplificationとして観測します。

FALLBACK CORRECTNESS

fallback responseが返ったことを“成功”と同義にしません。

cache、small model、別provider、retrievalなし回答等へfallbackすると、freshness、quality、tool support、structured-output contract、policy、data residencyが変わる場合があります。

fallback routeごとに許可されたdata classification、capability、policy、residency、quality floorを固定し、degraded responseであることをtraceへ残します。

SIDE EFFECT BOUNDARY

Circuit Breakerがopenになったことやclient timeoutが発生したことは、直前のexternal tool actionが実行されなかった証明ではありません。

payment、email、ticket update等のside-effecting callにはstable operation ID/idempotency keyを付け、timeout/connection loss時はauthoritative statusをreadbackしてreconcileします。

実装・運用

Resilience4jのようなlibraryはCircuitBreaker、Retry、RateLimiter、Bulkhead、TimeLimiterをcomposeできますが、decorator order、configuration、framework integration、versionによってobservable behaviorが変わります。

current release名だけでcompatibilityを推定せず、exact library/framework versionをpinしてfixtureを通します。v2.4.0ではSpring Boot 4 support artifactのBOM omissionがupstream issueとして報告されているため、release存在だけをintegration-completeの証拠にしません。

OPERATING CHECK

少なくともdependency latency/timeout、429/503 mix、nested retry、provider quota exhaustion、half-open recovery、queue/bulkhead saturation、interactive vs batch contention、fallback provider/model/cache、external side effect成功後response loss、capacity migration中のretry/load sheddingをfault injectionします。

breaker open duration/flapping、bulkhead rejection、shed rate、queue age、retry amplification、fallback quality、token/compute cost、recovery timeを記録します。

実装・運用 2

本項は2026-10-05時点のAzure architecture guidance、AWS resiliency guidance、Resilience4j author-maintained repository/release/issue、Google Cloud production incident reportとbounded local fixtureに基づきます。production provider overload、service mesh、external side effect mutationは未実施です。

よくある失敗・反証

  • slow/hard outage、429/503、timeout misconfiguration、retry storm、nested/synchronized retries、half-open probe flood、shared-breaker blast radius、bulkhead starvation、priority inversion、queue growth、quota exhaustion、fallback semantic mismatch、stale cache、residency/policy mismatch、ambiguous side effect、breaker flapping、wrong failure classification、manual override misuse、capacity migration overloadを想定します。

  • Circuit Breaker/Retry/Bulkhead/Load Sheddingを別controlとして分離し、retry amplificationとload sheddingのproduction counterevidence、dependency-specific isolation、fallback/side-effect boundaryを監査可能な形で固定します。

実務での使い方

  • 本項は2026-10-05時点のAzure architecture guidance、AWS resiliency guidance、Resilience4j author-maintained repository/release/issue、Google Cloud production incident reportとbounded local fixtureに基づきます。production provider overload、service mesh、external side effect mutationは未実施です。

まだ確認できていないこと

  • EA-246-UNKNOWN-01

    対象Agent runtime、provider/model/tool、retry layer、timeout/deadline、breaker threshold、bulkhead size、priority class、load-shed policy、fallback route、residency、external status/idempotency API、SLO/cost、production failure distribution、library/framework exact versionsは未確認です。

根拠資料

この記事には、直接開ける外部出典が登録されていません。出典IDや検証情報は末尾で確認できます。

更新履歴

  1. EA-246-FIRST-20261005: canonical audit/publication binding

出典ID・検証情報・機械可読データ

根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。

記事ID
EA-246
最終確認日
2026-10-05
提供元・モデル・プラン・利用環境
—
対象地域
—
元資料の全文と収録照合記録
PUBLIC_CLAIM

Circuit Breaker、Retry、Bulkhead、Load Sheddingは同じ機能ではありません。

Retryは一時障害からの回復を試みます。Circuit Breakerは失敗しやすい依存先を一定期間fail-fastにします。Bulkheadは同時実行・thread/connection/worker等のresourceを分離します。Load Sheddingはcapacityを超えるworkをadmission段階で拒否します。

AI/Agentでは、この4つにtimeout/deadlineを加えて設計します。

TIMEOUT_AND_RETRY_BUDGET

remote callには明示的なconnection/request/operation deadlineを設定します。長すぎるtimeoutはresourceを保持し、短すぎるtimeoutはretry trafficを増幅します。

retryは各layerで無制限に重ねません。end-to-end attempt budgetを決め、retry ownerを固定し、transient failureだけをbounded exponential backoff + jitterへ入れます。

schema invalid、policy denial、permission error等のdeterministic failureをdependency-health retryへ混ぜません。

CIRCUIT_BREAKER

breakerは少なくともClosed/Open/Half-Openのstateを持ちます。

Open中はlikely-failing dependencyへのrequestをfail-fastにし、Half-Openでは限定probeだけを通します。回復直後に全trafficを戻しません。

failure thresholdはerror countだけで固定せず、slow-call率、429/5xx、timeout、minimum sample、window、provider固有signalを区別します。authorizationやcaller validation failureを無条件にbreaker failureへ数えません。

BULKHEAD

bulkheadはconcurrency/resource isolationです。

interactive/high-priority requestとbatch/eval/background Agentを同一resource poolへ無制限に入れません。dependency別またはworkload class別にin-flight上限とqueue上限を持ち、queue待ちがdeadlineを超えるworkは実行前に拒否します。

LOAD_SHEDDING

load sheddingはoverload後の例外処理だけではなくadmission controlとして扱います。

queue depth/age、in-flight concurrency、deadline slack、estimated token/compute、provider quota、tenant budget、priorityを使ってadmissionを判断します。

low-priority/background workを先にshedできるようreserved capacityを設けます。ただしbusiness priorityをprompt長やmodel名だけから推定しません。

RETRY_AMPLIFICATION

retryは可用性を上げる場合がありますが、障害を増幅する場合もあります。

2025年のGoogle Cloud AppSheet incidentでは、primary database障害後のretry surgeがsecondary authentication databaseをoverloadし、その後のtraffic migrationとlicense-entitlement負荷、aggressive load sheddingがlatencyをさらに悪化させました。

そのため、retry countだけでなくoriginal requestに対するtotal downstream attemptsをretry amplificationとして観測します。

FALLBACK_CORRECTNESS

fallback responseが返ったことを“成功”と同義にしません。

cache、small model、別provider、retrievalなし回答等へfallbackすると、freshness、quality、tool support、structured-output contract、policy、data residencyが変わる場合があります。

fallback routeごとに許可されたdata classification、capability、policy、residency、quality floorを固定し、degraded responseであることをtraceへ残します。

SIDE_EFFECT_BOUNDARY

Circuit Breakerがopenになったことやclient timeoutが発生したことは、直前のexternal tool actionが実行されなかった証明ではありません。

payment、email、ticket update等のside-effecting callにはstable operation ID/idempotency keyを付け、timeout/connection loss時はauthoritative statusをreadbackしてreconcileします。

OSS_IMPLEMENTATION_BOUNDARY

Resilience4jのようなlibraryはCircuitBreaker、Retry、RateLimiter、Bulkhead、TimeLimiterをcomposeできますが、decorator order、configuration、framework integration、versionによってobservable behaviorが変わります。

current release名だけでcompatibilityを推定せず、exact library/framework versionをpinしてfixtureを通します。v2.4.0ではSpring Boot 4 support artifactのBOM omissionがupstream issueとして報告されているため、release存在だけをintegration-completeの証拠にしません。

OPERATING_CHECK

少なくともdependency latency/timeout、429/503 mix、nested retry、provider quota exhaustion、half-open recovery、queue/bulkhead saturation、interactive vs batch contention、fallback provider/model/cache、external side effect成功後response loss、capacity migration中のretry/load sheddingをfault injectionします。

breaker open duration/flapping、bulkhead rejection、shed rate、queue age、retry amplification、fallback quality、token/compute cost、recovery timeを記録します。

FAILURE_ENVELOPE

slow/hard outage、429/503、timeout misconfiguration、retry storm、nested/synchronized retries、half-open probe flood、shared-breaker blast radius、bulkhead starvation、priority inversion、queue growth、quota exhaustion、fallback semantic mismatch、stale cache、residency/policy mismatch、ambiguous side effect、breaker flapping、wrong failure classification、manual override misuse、capacity migration overloadを想定します。

IMPLEMENTATION_STATE

本項は2026-10-05時点のAzure architecture guidance、AWS resiliency guidance、Resilience4j author-maintained repository/release/issue、Google Cloud production incident reportとbounded local fixtureに基づきます。production provider overload、service mesh、external side effect mutationは未実施です。

SAFE_WORDING

Circuit Breaker、Bulkhead、Load Shedding、Timeout、Retryは別の障害制御です。Circuit Breakerは失敗しやすい依存先をfail-fastにしますが、長時間実行中のresource占有、過剰な同時実行、retry amplification、外部side effectの重複まで自動的に防ぎません。依存先別のtimeout/breaker/bulkhead、end-to-end retry budget、priority-aware admission、限定half-open probe、fallbackの意味的適合性、side-effect readback/reconciliationを組み合わせてください。

OPEN_UNKNOWN

対象Agent runtime、provider/model/tool、retry layer、timeout/deadline、breaker threshold、bulkhead size、priority class、load-shed policy、fallback route、residency、external status/idempotency API、SLO/cost、production failure distribution、library/framework exact versionsは未確認です。

STOP_CONDITION

Circuit Breaker/Retry/Bulkhead/Load Sheddingを別controlとして分離し、retry amplificationとload sheddingのproduction counterevidence、dependency-specific isolation、fallback/side-effect boundaryを監査可能な形で固定します。

  • EA-246-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET

    現行本文の監査・revision対応

    裏付ける内容
    現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。
    確認日
    —
    出典・実験ID
    CANDIDATE-EA246-FIRST-20261005-C2-RESCUE20261013
    検証箇所
    1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ · EA_REVISION_LEDGER!A49:U49 · EA-246-FIRST-20261005
    適用範囲
    —
    出典・来歴
    CURRENT_CANONICAL_APPROVAL_READBACK
    限界
    監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
  • EA-246-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK

    現行本文の収録照合

    裏付ける内容
    公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
    確認日
    2026-10-13
    出典・実験ID
    BODY-SHA256:3b9dace9ac2af9b44d964e3e44a37265f7b1b6f40a373f90b37d9b431971d941
    検証箇所
    content/staging/EA-246.md · 3b9dace9ac2af9b44d964e3e44a37265f7b1b6f40a373f90b37d9b431971d941 · EA-246-FIRST-20261005
    適用範囲
    —
    出典・来歴
    CURRENT_APPROVED_BODY_HASH_MATCH
    限界
    本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
出典ID
CANDIDATE-EA246-FIRST-20261005-C2-RESCUE20261013, BODY-SHA256:3b9dace9ac2af9b44d964e3e44a37265f7b1b6f40a373f90b37d9b431971d941
追跡中のUNKNOWN ID
EA-246-UNKNOWN-01
再確認のきっかけ
canonical revision/publication state change · body artifact hash change · source currentness change · new contradiction or implementation readback

機械検査: 通過 — Automated validation does not guarantee accuracy or authorize execution.

    同じ記事IDの機械可読データです。