# circuit-breakers

## Summary

### Example object

```javascript
{
  "max_connections": 1,
  "max_pending_requests": 1,
  "max_retries": 1,
  "max_requests": 1,
  "max_connection_pools": 1,
  "track_remaining": true,
  "high": null
}
```

### Fields

#### `max_connections`

MaxConnections is the maximum number of connections that will be established to all instances in a cluster within a proxy. If set to 0, no new connections will be created. If not specified, defaults to 1024.

#### `max_pending_requests`

MaxPendingRequests is the maximum number of requests that will be queued while waiting on a connection pool to a cluster within a proxy. If set to 0, no requests will be queued. If not specified, defaults to 1024.

#### `max_requests`

MaxRequests is the maximum number of requests that can be outstanding to all instances in a cluster within a proxy. Only applicable to HTTP/2 traffic since HTTP/1.1 clusters are governed by the maximum connections circuit breaker. If set to 0, no requests will be made. If not specified, defaults to 1024.

#### `max_retries`

MaxRetries is the maximum number of retries that can be outstanding to all instances in a cluster within a proxy. If set to 0, requests will not be retried. If not specified, defaults to 3.

#### `max_connection_pools`

MaxConnectionPools is the maximum number of connection pools per cluster that Envoy will concurrently support at once. If not specified, the default is unlimited. Set this for clusters which create a large number of connection pools.

#### `track_remaining`

TrackRemaining enables the publishing of stats that expose the number of resources remaining until the circuit breakers open. If not specified, the default is false.

#### `high`

Another [circuit\_breaker](#fields) for high-priority requests.
