斷路器 (proto)

config.cluster.v3.CircuitBreakers

[config.cluster.v3.CircuitBreakers proto]

可以為每個定義的優先順序單獨指定斷路設定。

{
  "thresholds": [],
  "per_host_thresholds": []
}
thresholds

(重複 config.cluster.v3.CircuitBreakers.Thresholds) 如果定義了多個具有相同 RoutingPriorityThresholds,則使用清單中的第一個。如果沒有為給定的 RoutingPriority 定義 Thresholds,則使用預設值。

per_host_thresholds

(重複 config.cluster.v3.CircuitBreakers.Thresholds) 可選的每個主機限制,適用於叢集中的每個個別主機。

注意

目前僅支援每個主機限制的 max_connections 欄位。

如果定義了多個具有相同 RoutingPriority 的每個主機 Thresholds,則使用清單中的第一個。如果沒有為給定的 RoutingPriority 定義每個主機 Thresholds,則該叢集將沒有每個主機的限制。

config.cluster.v3.CircuitBreakers.Thresholds

[config.cluster.v3.CircuitBreakers.Thresholds proto]

Thresholds 為 RoutingPriority 定義 CircuitBreaker 設定。

{
  "priority": ...,
  "max_connections": {...},
  "max_pending_requests": {...},
  "max_requests": {...},
  "max_retries": {...},
  "retry_budget": {...},
  "track_remaining": ...,
  "max_connection_pools": {...}
}
priority

(config.core.v3.RoutingPriority) 指定的 CircuitBreaker 設定所適用的 RoutingPriority

max_connections

(UInt32Value) Envoy 將連線到上游叢集的最大連線數。如果未指定,則預設值為 1024。

max_pending_requests

(UInt32Value) Envoy 將允許傳送到上游叢集的最大待處理請求數。如果未指定,則預設值為 1024。此限制適用於非 HTTP 流量的連線限制。

max_requests

(UInt32Value) Envoy 將傳送到上游叢集的最大並行請求數。如果未指定,則預設值為 1024。此限制不適用於非 HTTP 流量。

max_retries

(UInt32Value) Envoy 將允許傳送到上游叢集的最大並行重試次數。如果未指定,則預設值為 3。

retry_budget

(config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget) 指定與作用中請求數量相關的並行重試限制。此參數為可選。

注意

如果設定此欄位,重試預算將覆蓋任何已設定的重試斷路器。

track_remaining

(bool) 如果 track_remaining 為 true,則將發布統計資訊,以顯示在斷路器開啟之前剩餘的資源數量。如果未指定,則預設值為 false。

注意

如果使用重試預算來代替 max_retries 斷路器,則不會追蹤剩餘的重試資源。

max_connection_pools

(UInt32Value) Envoy 將同時支援的每個叢集最大連線池數量。如果未指定,則預設為無限制。為建立大量連線池的叢集設定此選項。有關更多詳細資訊,請參閱斷路

config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget

[config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget proto]

{
  "budget_percent": {...},
  "min_retry_concurrency": {...}
}
budget_percent

(type.v3.Percent) 指定並行重試的限制,以作用中請求和作用中待處理請求的總和的百分比表示。例如,如果存在 100 個作用中請求且 budget_percent 設定為 25,則可能存在 25 個作用中重試。

此參數為可選。預設值為 20%。

min_retry_concurrency

(UInt32Value) 指定重試預算允許的最小重試並行數。作用中重試次數的限制永遠不能低於此數。

此參數為可選。預設值為 3。