pub struct SpikyLatency<L: LatencyModel> {
pub inner: L,
pub spike_probability: f64,
pub spike_max: Duration,
}Expand description
Injects occasional delay spikes on top of an inner latency model.
On each compute() call, the inner model is consulted first. With
probability spike_probability, an additional uniformly random spike
in [0, spike_max] is added. Useful for simulating tail-latency fault
storms, GC pauses, or congested links without a full queueing model.
Fields§
§inner: LInner latency model.
spike_probability: f64Probability of a spike on any given message, in [0.0, 1.0].
spike_max: DurationMaximum additional spike duration.
Implementations§
Source§impl<L: LatencyModel> SpikyLatency<L>
impl<L: LatencyModel> SpikyLatency<L>
Trait Implementations§
Source§impl<L: Clone + LatencyModel> Clone for SpikyLatency<L>
impl<L: Clone + LatencyModel> Clone for SpikyLatency<L>
Source§fn clone(&self) -> SpikyLatency<L>
fn clone(&self) -> SpikyLatency<L>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<L: Debug + LatencyModel> Debug for SpikyLatency<L>
impl<L: Debug + LatencyModel> Debug for SpikyLatency<L>
Source§impl<L: LatencyModel> LatencyModel for SpikyLatency<L>
impl<L: LatencyModel> LatencyModel for SpikyLatency<L>
impl<L: Copy + LatencyModel> Copy for SpikyLatency<L>
Auto Trait Implementations§
impl<L> Freeze for SpikyLatency<L>where
L: Freeze,
impl<L> RefUnwindSafe for SpikyLatency<L>where
L: RefUnwindSafe,
impl<L> Send for SpikyLatency<L>where
L: Send,
impl<L> Sync for SpikyLatency<L>where
L: Sync,
impl<L> Unpin for SpikyLatency<L>where
L: Unpin,
impl<L> UnsafeUnpin for SpikyLatency<L>where
L: UnsafeUnpin,
impl<L> UnwindSafe for SpikyLatency<L>where
L: UnwindSafe,
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