You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
syntax = "proto3"; |
|
|
|
package envoy.api.v2.cluster; |
|
option go_package = "cluster"; |
|
|
|
import "envoy/api/v2/core/base.proto"; |
|
|
|
import "google/protobuf/wrappers.proto"; |
|
|
|
import "gogoproto/gogo.proto"; |
|
|
|
option (gogoproto.equal_all) = true; |
|
|
|
// [#protodoc-title: Circuit breakers] |
|
|
|
// :ref:`Circuit breaking<arch_overview_circuit_break>` settings can be |
|
// specified individually for each defined priority. |
|
message CircuitBreakers { |
|
|
|
// A Thresholds defines CircuitBreaker settings for a |
|
// :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`. |
|
message Thresholds { |
|
// The :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>` |
|
// the specified CircuitBreaker settings apply to. |
|
// [#comment:TODO(htuch): add (validate.rules).enum.defined_only = true once |
|
// https://github.com/lyft/protoc-gen-validate/issues/42 is resolved.] |
|
core.RoutingPriority priority = 1; |
|
|
|
// The maximum number of connections that Envoy will make to the upstream |
|
// cluster. If not specified, the default is 1024. |
|
google.protobuf.UInt32Value max_connections = 2; |
|
|
|
// The maximum number of pending requests that Envoy will allow to the |
|
// upstream cluster. If not specified, the default is 1024. |
|
google.protobuf.UInt32Value max_pending_requests = 3; |
|
|
|
// The maximum number of parallel requests that Envoy will make to the |
|
// upstream cluster. If not specified, the default is 1024. |
|
google.protobuf.UInt32Value max_requests = 4; |
|
|
|
// The maximum number of parallel retries that Envoy will allow to the |
|
// upstream cluster. If not specified, the default is 3. |
|
google.protobuf.UInt32Value max_retries = 5; |
|
} |
|
|
|
// If multiple :ref:`Thresholds<envoy_api_msg_cluster.CircuitBreakers.Thresholds>` |
|
// are defined with the same :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`, |
|
// the first one in the list is used. If no Thresholds is defined for a given |
|
// :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`, the default values |
|
// are used. |
|
repeated Thresholds thresholds = 1; |
|
}
|
|
|