pub struct BcmCacheConfig {
pub max_hot_bytes: u64,
pub max_warm_bytes: u64,
pub max_cold_bytes: u64,
pub hot_threshold: u64,
pub warm_threshold: u64,
pub eviction_policy: EvictionPolicy,
}Expand description
Configuration for BlockCacheManager.
Note: named BcmCacheConfig to avoid collision with the CacheConfig in
ipfrs-storage::cache.
Fields§
§max_hot_bytes: u64Maximum total bytes that may reside in the Hot tier.
max_warm_bytes: u64Maximum total bytes that may reside in the Warm tier.
max_cold_bytes: u64Maximum total bytes that may reside in the Cold tier.
hot_threshold: u64Minimum access_count required to promote a block to Hot.
warm_threshold: u64Minimum access_count required to promote a block to Warm (must be < hot_threshold).
eviction_policy: EvictionPolicyEviction algorithm to use within each tier.
Trait Implementations§
Source§impl Clone for BcmCacheConfig
impl Clone for BcmCacheConfig
Source§fn clone(&self) -> BcmCacheConfig
fn clone(&self) -> BcmCacheConfig
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 Debug for BcmCacheConfig
impl Debug for BcmCacheConfig
Auto Trait Implementations§
impl Freeze for BcmCacheConfig
impl RefUnwindSafe for BcmCacheConfig
impl Send for BcmCacheConfig
impl Sync for BcmCacheConfig
impl Unpin for BcmCacheConfig
impl UnsafeUnpin for BcmCacheConfig
impl UnwindSafe for BcmCacheConfig
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more