pub enum LatencyDistribution {
Uniform,
Bimodal,
}Expand description
Latency distribution mode for network operations.
Controls how latencies are sampled for network operations.
FDB ref: sim2.actor.cpp:317-329 (halfLatency())
§Real-World Scenario
Real networks exhibit bimodal latency patterns where most operations are fast, but a small percentage experience significantly higher latency (tail latency). This is crucial for testing:
- P99/P99.9 latency handling
- Timeout tuning
- Retry logic under tail latency conditions
Variants§
Uniform
Uniform distribution within the configured range. All latencies equally likely within [min, max].
Bimodal
Bimodal distribution matching FDB’s halfLatency() pattern.
- 99.9% of operations: fast latency (within configured range)
- 0.1% of operations: slow latency (multiplied by
slow_latency_multiplier)
FDB ref: sim2.actor.cpp:317-329
Trait Implementations§
Source§impl Clone for LatencyDistribution
impl Clone for LatencyDistribution
Source§fn clone(&self) -> LatencyDistribution
fn clone(&self) -> LatencyDistribution
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 LatencyDistribution
impl Debug for LatencyDistribution
Source§impl Default for LatencyDistribution
impl Default for LatencyDistribution
Source§fn default() -> LatencyDistribution
fn default() -> LatencyDistribution
Returns the “default value” for a type. Read more
Source§impl PartialEq for LatencyDistribution
impl PartialEq for LatencyDistribution
impl Copy for LatencyDistribution
impl Eq for LatencyDistribution
impl StructuralPartialEq for LatencyDistribution
Auto Trait Implementations§
impl Freeze for LatencyDistribution
impl RefUnwindSafe for LatencyDistribution
impl Send for LatencyDistribution
impl Sync for LatencyDistribution
impl Unpin for LatencyDistribution
impl UnsafeUnpin for LatencyDistribution
impl UnwindSafe for LatencyDistribution
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