#[derive(Debug, Clone, Default)]
pub struct ServeOptions {
pub max_concurrency: Option<usize>,
pub max_serve_errors: Option<usize>,
pub request_timeout_ms: Option<u64>,
pub max_connections_per_peer: Option<usize>,
pub max_request_body_wire_bytes: Option<usize>,
pub max_request_body_decoded_bytes: Option<usize>,
pub drain_timeout_ms: Option<u64>,
pub max_total_connections: Option<usize>,
pub load_shed: Option<bool>,
pub decompression: Option<bool>,
}
pub(crate) const DEFAULT_CONCURRENCY: usize = 1024;
pub(crate) const DEFAULT_REQUEST_TIMEOUT_MS: u64 = 60_000;
pub(crate) const DEFAULT_MAX_CONNECTIONS_PER_PEER: usize = 8;
pub(crate) const DEFAULT_DRAIN_TIMEOUT_MS: u64 = 30_000;
pub(crate) const DEFAULT_MAX_REQUEST_BODY_BYTES: usize = 16 * 1024 * 1024;
pub(crate) const DEFAULT_MAX_RESPONSE_BODY_BYTES: usize = 256 * 1024 * 1024;