pub struct ServerConf {Show 24 fields
pub addr: String,
pub access_log: Option<String>,
pub locations: Option<Vec<String>>,
pub threads: Option<usize>,
pub tls_cipher_list: Option<String>,
pub tls_ciphersuites: Option<String>,
pub tls_min_version: Option<String>,
pub tls_max_version: Option<String>,
pub global_certificates: Option<bool>,
pub enabled_h2: Option<bool>,
pub tcp_idle: Option<Duration>,
pub tcp_interval: Option<Duration>,
pub tcp_user_timeout: Option<Duration>,
pub downstream_read_timeout: Option<Duration>,
pub downstream_write_timeout: Option<Duration>,
pub tcp_probe_count: Option<usize>,
pub tcp_fastopen: Option<usize>,
pub reuse_port: Option<bool>,
pub prometheus_metrics: Option<String>,
pub otlp_exporter: Option<String>,
pub includes: Option<Vec<String>>,
pub modules: Option<Vec<String>>,
pub enable_server_timing: Option<bool>,
pub remark: Option<String>,
}Expand description
Configuration for a server instance that handles incoming HTTP/HTTPS requests
Fields§
§addr: StringAddress to listen on in format “host:port” or multiple addresses separated by commas
access_log: Option<String>Access log format string for request logging
locations: Option<Vec<String>>List of location names that this server handles
threads: Option<usize>Number of worker threads for this server instance
tls_cipher_list: Option<String>OpenSSL cipher list string for TLS connections
tls_ciphersuites: Option<String>TLS 1.3 ciphersuites string
tls_min_version: Option<String>Minimum TLS version to accept (e.g. “TLSv1.2”)
tls_max_version: Option<String>Maximum TLS version to use (e.g. “TLSv1.3”)
global_certificates: Option<bool>Whether to use global certificates instead of per-server certs
enabled_h2: Option<bool>Whether to enable HTTP/2 protocol support
tcp_idle: Option<Duration>TCP keepalive idle timeout
tcp_interval: Option<Duration>TCP keepalive probe interval
tcp_user_timeout: Option<Duration>TCP keepalive user timeout
downstream_read_timeout: Option<Duration>§downstream_write_timeout: Option<Duration>§tcp_probe_count: Option<usize>Number of TCP keepalive probes before connection is dropped
tcp_fastopen: Option<usize>TCP Fast Open queue length (0 to disable)
reuse_port: Option<bool>Enable SO_REUSEPORT to allow multiple sockets to bind to the same address and port. This is useful for load balancing across multiple worker processes. See the man page for more information.
prometheus_metrics: Option<String>Path to expose Prometheus metrics on
otlp_exporter: Option<String>OpenTelemetry exporter configuration
includes: Option<Vec<String>>List of configuration files to include
modules: Option<Vec<String>>List of modules to enable for this server
enable_server_timing: Option<bool>Whether to enable server-timing header
remark: Option<String>Optional description/notes about this server
Trait Implementations§
Source§impl Clone for ServerConf
impl Clone for ServerConf
Source§fn clone(&self) -> ServerConf
fn clone(&self) -> ServerConf
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ServerConf
impl Debug for ServerConf
Source§impl Default for ServerConf
impl Default for ServerConf
Source§fn default() -> ServerConf
fn default() -> ServerConf
Source§impl<'de> Deserialize<'de> for ServerConf
impl<'de> Deserialize<'de> for ServerConf
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>,
Auto Trait Implementations§
impl Freeze for ServerConf
impl RefUnwindSafe for ServerConf
impl Send for ServerConf
impl Sync for ServerConf
impl Unpin for ServerConf
impl UnwindSafe for ServerConf
Blanket Implementations§
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request