use std::time::Duration;
use crate::utils::get_now_as_u32;
#[derive(Debug, Clone)]
pub struct ClientConfig {
pub id: u32,
pub connect_timeout: Duration,
pub request_timeout: Duration,
pub tcp_keepalive: Duration,
pub http2_keepalive_interval: Duration,
pub http2_keepalive_timeout: Duration,
pub max_frame_size: u32,
pub enable_compression: bool,
pub cluster_ready_timeout: Duration,
}
impl Default for ClientConfig {
fn default() -> Self {
Self {
id: get_now_as_u32(),
connect_timeout: Duration::from_millis(1000),
request_timeout: Duration::from_millis(3000),
tcp_keepalive: Duration::from_secs(300),
http2_keepalive_interval: Duration::from_secs(60),
http2_keepalive_timeout: Duration::from_secs(20),
max_frame_size: 1 << 20, enable_compression: false,
cluster_ready_timeout: Duration::from_secs(5),
}
}
}