Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
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.
 
 
 
 
 
 

41 lines
1.5 KiB

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
syntax = "proto3";
package hashicorp.consul.mesh.v1alpha1;
import "google/protobuf/duration.proto";
// HTTPRouteTimeouts defines timeouts that can be configured for an HTTPRoute.
// Timeout values are formatted like 1h/1m/1s/1ms as parsed by Golang time.ParseDuration
// and MUST BE >= 1ms.
//
// ALTERNATIVE: not using policy attachment semantics
message HTTPRouteTimeouts {
// Request specifies the duration for processing an HTTP client request after which the
// gateway will time out if unable to send a response.
// Whether the gateway starts the timeout before or after the entire client request stream
// has been received, is implementation-dependent.
//
// For example, setting the `rules.timeouts.request` field to the value `10s` in an
// `HTTPRoute` will cause a timeout if a client request is taking longer than 10 seconds
// to complete.
//
// When this field is unspecified, request timeout behavior is implementation-dependent.
google.protobuf.Duration request = 1;
// BackendRequest specifies a timeout for an individual request from the gateway
// to a backend service. Typically used in conjuction with retry configuration,
// if supported by an implementation.
//
// The value of BackendRequest defaults to and must be <= the value of Request timeout.
//
// Support: Extended
//
// TODO(rb): net-new feature
google.protobuf.Duration backend_request = 2;
// TODO(RB): this is a consul-only feature
google.protobuf.Duration idle = 3;
}