pub struct PerformanceConfig {Show 15 fields
pub http_client_pool_size: usize,
pub http_client_pool_idle_timeout_secs: u64,
pub http_client_connect_timeout_secs: u64,
pub http_client_timeout_secs: u64,
pub http_client_read_timeout_secs: u64,
pub http_client_max_retries: u32,
pub http_client_retry_initial_delay_ms: u64,
pub http_client_retry_max_delay_ms: u64,
pub cache_max_size: usize,
pub cache_default_ttl_secs: u64,
pub rate_limit_per_second: u32,
pub concurrent_request_limit: usize,
pub enable_response_compression: bool,
pub enable_metrics: bool,
pub metrics_port: u16,
}Expand description
性能配置
§热重载支持
§支持热重载的字段 ✅
以下字段可以在运行时动态更新:
rate_limit_per_second: 请求速率限制(每秒请求数)concurrent_request_limit: 并发请求限制enable_metrics: Prometheus 指标收集开关enable_response_compression: 响应压缩开关
§不支持热重载的字段 ❌
以下字段需要重启服务器才能生效:
http_client_*: HTTP 客户端配置(连接池大小、超时等)cache_max_size: 缓存最大大小cache_default_ttl_secs: 缓存默认 TTLmetrics_port: 指标服务端口
原因:这些配置涉及底层连接池、缓存实例的初始化参数。
Fields§
§http_client_pool_size: usizeHTTP client connection pool size
http_client_pool_idle_timeout_secs: u64HTTP client pool idle timeout (seconds)
http_client_connect_timeout_secs: u64HTTP client connection timeout (seconds)
http_client_timeout_secs: u64HTTP client request timeout (seconds)
http_client_read_timeout_secs: u64HTTP client read timeout (seconds)
http_client_max_retries: u32HTTP client max retry attempts
http_client_retry_initial_delay_ms: u64HTTP client retry initial delay (milliseconds)
http_client_retry_max_delay_ms: u64HTTP client retry max delay (milliseconds)
cache_max_size: usizeMaximum cache size (number of entries)
cache_default_ttl_secs: u64Default cache TTL (seconds)
rate_limit_per_second: u32Request rate limit (requests per second)
concurrent_request_limit: usizeConcurrent request limit
enable_response_compression: boolEnable response compression
enable_metrics: boolEnable Prometheus metrics
metrics_port: u16Metrics endpoint port (0 = use server port)
Trait Implementations§
Source§impl Clone for PerformanceConfig
impl Clone for PerformanceConfig
Source§fn clone(&self) -> PerformanceConfig
fn clone(&self) -> PerformanceConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PerformanceConfig
impl Debug for PerformanceConfig
Source§impl Default for PerformanceConfig
impl Default for PerformanceConfig
Source§impl<'de> Deserialize<'de> for PerformanceConfig
impl<'de> Deserialize<'de> for PerformanceConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PerformanceConfig
impl RefUnwindSafe for PerformanceConfig
impl Send for PerformanceConfig
impl Sync for PerformanceConfig
impl Unpin for PerformanceConfig
impl UnsafeUnpin for PerformanceConfig
impl UnwindSafe for PerformanceConfig
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
Mutably borrows from an owned value. Read more