pub struct TcpClusterConfig {Show 20 fields
pub cluster_id: String,
pub frontends: Vec<TcpFrontendConfig>,
pub backends: Vec<BackendConfig>,
pub proxy_protocol: Option<ProxyProtocolConfig>,
pub load_balancing: LoadBalancingAlgorithms,
pub load_metric: Option<LoadMetric>,
pub answers: BTreeMap<String, String>,
pub https_redirect_port: Option<u32>,
pub authorized_hashes: Vec<String>,
pub www_authenticate: Option<String>,
pub max_connections_per_ip: Option<u64>,
pub max_connections_per_subnet: Option<u64>,
pub retry_after: Option<u32>,
pub health_check: Option<HealthCheckConfig>,
pub health_check_header_files: Vec<FileHealthCheckHeader>,
pub udp: Option<UdpClusterConfig>,
pub shard_percent: Option<u32>,
pub shard_min_backends: Option<u32>,
pub shard_mode: Option<ShardMode>,
pub max_connection_attempts: Option<u32>,
}Fields§
§cluster_id: String§frontends: Vec<TcpFrontendConfig>§backends: Vec<BackendConfig>§proxy_protocol: Option<ProxyProtocolConfig>§load_balancing: LoadBalancingAlgorithms§load_metric: Option<LoadMetric>§answers: BTreeMap<String, String>Per-status template body map (already loaded from disk). Even
though TCP clusters do not emit HTTP responses, the field is
carried for shape uniformity with HttpClusterConfig.
https_redirect_port: Option<u32>§www_authenticate: Option<String>§max_connections_per_ip: Option<u64>Per-cluster override of the global max_connections_per_ip. See
FileClusterConfig::max_connections_per_ip for semantics.
max_connections_per_subnet: Option<u64>Per-cluster override of the global max_connections_per_subnet.
See FileClusterConfig::max_connections_per_subnet for
semantics: an independent second cap, not a replacement for the
per-IP one.
retry_after: Option<u32>Per-cluster override of the global retry_after. TCP listeners
never emit Retry-After; the field is carried for shape
uniformity with HttpClusterConfig.
health_check: Option<HealthCheckConfig>Optional HTTP health-check configuration. TCP clusters carry this
field for shape uniformity with HttpClusterConfig; probes are
HTTP/1.1 only and TCP-only backends should leave this absent.
health_check_header_files: Vec<FileHealthCheckHeader>Where each header named by health_check reads its value from, in the
same order. References, never values: they are kept for the protected
activation and never copied into an AddCluster order.
udp: Option<UdpClusterConfig>Optional UDP-specific cluster configuration, parsed from a
[clusters.<id>.udp] block on this cluster.
shard_percent: Option<u32>Shuffle-sharding share of the backends. See
FileClusterConfig::shard_percent.
shard_min_backends: Option<u32>§shard_mode: Option<ShardMode>§max_connection_attempts: Option<u32>Implementations§
Source§impl TcpClusterConfig
impl TcpClusterConfig
pub fn generate_requests(&self) -> Result<Vec<Request>, ConfigError>
Trait Implementations§
Source§impl Clone for TcpClusterConfig
impl Clone for TcpClusterConfig
Source§impl Debug for TcpClusterConfig
impl Debug for TcpClusterConfig
Source§impl<'de> Deserialize<'de> for TcpClusterConfig
impl<'de> Deserialize<'de> for TcpClusterConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for TcpClusterConfig
Source§impl Hash for TcpClusterConfig
impl Hash for TcpClusterConfig
Source§impl PartialEq for TcpClusterConfig
impl PartialEq for TcpClusterConfig
Source§impl Serialize for TcpClusterConfig
impl Serialize for TcpClusterConfig
impl StructuralPartialEq for TcpClusterConfig
Auto Trait Implementations§
impl Freeze for TcpClusterConfig
impl RefUnwindSafe for TcpClusterConfig
impl Send for TcpClusterConfig
impl Sync for TcpClusterConfig
impl Unpin for TcpClusterConfig
impl UnsafeUnpin for TcpClusterConfig
impl UnwindSafe for TcpClusterConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.