#[non_exhaustive]pub struct Config {
pub http_keep_alive: bool,
pub tcp_no_delay: bool,
pub timeout: Option<Duration>,
pub max_connections_per_host: usize,
pub tls_config: Option<Arc<TlsConnector>>,
}Expand description
Configuration for HttpClients.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.http_keep_alive: boolHTTP/1.1 keep-alive (connection pooling).
Default: true.
Note: Does nothing on wasm_client.
tcp_no_delay: boolTCP NO_DELAY.
Default: false.
Note: Does nothing on wasm_client.
timeout: Option<Duration>Connection timeout duration.
Default: Some(Duration::from_secs(60)).
max_connections_per_host: usizeMaximum number of simultaneous connections that this client is allowed to keep open to individual hosts at one time.
Default: 50.
This number is based on a few random benchmarks and see whatever gave decent perf vs resource use in Orogene.
Note: The behavior of this is different depending on the backend in use.
h1_client:0is disallowed and asserts as otherwise it would cause a semaphore deadlock.curl_client:0allows for limitless connections per host.hyper_client: No effect. Hyper does not support such an option.wasm_client: No effect. Web browsers do not support such an option.
tls_config: Option<Arc<TlsConnector>>TLS Configuration (Native TLS)
Implementations§
Source§impl Config
impl Config
Sourcepub fn set_http_keep_alive(self, keep_alive: bool) -> Self
pub fn set_http_keep_alive(self, keep_alive: bool) -> Self
Set HTTP/1.1 keep-alive (connection pooling).
Sourcepub fn set_tcp_no_delay(self, no_delay: bool) -> Self
pub fn set_tcp_no_delay(self, no_delay: bool) -> Self
Set TCP NO_DELAY.
Sourcepub fn set_timeout(self, timeout: Option<Duration>) -> Self
pub fn set_timeout(self, timeout: Option<Duration>) -> Self
Set connection timeout duration.
Sourcepub fn set_max_connections_per_host(
self,
max_connections_per_host: usize,
) -> Self
pub fn set_max_connections_per_host( self, max_connections_per_host: usize, ) -> Self
Set the maximum number of simultaneous connections that this client is allowed to keep open to individual hosts at one time.
Sourcepub fn set_tls_config(self, tls_config: Option<Arc<TlsConnector>>) -> Self
pub fn set_tls_config(self, tls_config: Option<Arc<TlsConnector>>) -> Self
Set TLS Configuration (Native TLS)