pub struct ServerConfig {
pub listen_addr: SocketAddr,
pub subscriber_channel_capacity: usize,
pub grpc_output_buffer: usize,
pub store_path: Option<PathBuf>,
pub redelivery_interval_secs: u64,
pub max_delivery_attempts: u32,
pub retention_secs: u64,
pub default_ack_timeout_secs: u32,
pub default_max_in_flight: u32,
pub gc_interval_secs: u64,
pub redelivery_batch_size: u32,
}Fields§
§listen_addr: SocketAddr§subscriber_channel_capacity: usizeCapacity of the broadcast (fanout) and mpsc (queue-group) channels inside the broker engine. This is the main buffer between publishers and subscribers.
grpc_output_buffer: usizeCapacity of the gRPC output mpsc channel per subscriber. This is a small decoupling buffer between the forwarding task and the gRPC write. Keep it small — back-pressure should be handled by the broadcast/mpsc channel above.
store_path: Option<PathBuf>Path to the redb store file. None = fire-and-forget only, no durable mode.
redelivery_interval_secs: u64How often the redelivery loop runs (seconds).
max_delivery_attempts: u32Max delivery attempts before dead-lettering.
retention_secs: u64How long to keep acked messages before GC (seconds).
default_ack_timeout_secs: u32Default ack timeout for durable subscriptions (seconds).
default_max_in_flight: u32Default max in-flight messages for durable subscriptions.
gc_interval_secs: u64How often the GC loop runs (seconds).
redelivery_batch_size: u32Max expired messages processed per consumer per redelivery cycle.
Implementations§
Source§impl ServerConfig
impl ServerConfig
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ServerConfig
impl RefUnwindSafe for ServerConfig
impl Send for ServerConfig
impl Sync for ServerConfig
impl Unpin for ServerConfig
impl UnsafeUnpin for ServerConfig
impl UnwindSafe for ServerConfig
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> 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