pub struct BootstrapCacheConfig {
pub enabled: bool,
pub cache_dir: Option<PathBuf>,
pub max_contacts: usize,
pub stale_threshold_days: u64,
}Expand description
Bootstrap cache configuration for persistent peer storage.
The bootstrap cache stores discovered peers across node restarts, ranking them by quality metrics (success rate, latency, recency). This reduces dependency on hardcoded bootstrap nodes and enables faster network reconnection after restarts.
Fields§
§enabled: boolEnable persistent bootstrap cache. Default: true
cache_dir: Option<PathBuf>Directory for cache files.
Default: {root_dir}/bootstrap_cache/
max_contacts: usizeMaximum contacts to store in the cache. Default: 10,000
stale_threshold_days: u64Stale contact threshold in days. Contacts older than this are removed during cleanup. Default: 7 days
Trait Implementations§
Source§impl Clone for BootstrapCacheConfig
impl Clone for BootstrapCacheConfig
Source§fn clone(&self) -> BootstrapCacheConfig
fn clone(&self) -> BootstrapCacheConfig
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 BootstrapCacheConfig
impl Debug for BootstrapCacheConfig
Source§impl Default for BootstrapCacheConfig
impl Default for BootstrapCacheConfig
Source§impl<'de> Deserialize<'de> for BootstrapCacheConfig
impl<'de> Deserialize<'de> for BootstrapCacheConfig
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 BootstrapCacheConfig
impl RefUnwindSafe for BootstrapCacheConfig
impl Send for BootstrapCacheConfig
impl Sync for BootstrapCacheConfig
impl Unpin for BootstrapCacheConfig
impl UnsafeUnpin for BootstrapCacheConfig
impl UnwindSafe for BootstrapCacheConfig
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
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