pub struct RemoteCache { /* private fields */ }Expand description
HTTPS-backed cache that reads pre-compiled artifacts from a
base URL. Feature-gated on remote-cache so library users who only
want disk caching don’t pull in ureq.
Writes are no-ops - RemoteCache is a read-through layer.
Publishing to a remote registry is a separate vyre publish-cache
xtask, not part of this runtime.
Implementations§
Trait Implementations§
Source§impl PipelineCacheStore for RemoteCache
impl PipelineCacheStore for RemoteCache
Source§fn get(&self, fp: &PipelineFingerprint) -> Option<Vec<u8>>
fn get(&self, fp: &PipelineFingerprint) -> Option<Vec<u8>>
Look up a cached artifact for this fingerprint. Read more
Source§fn put(&self, _fp: PipelineFingerprint, _artifact: Vec<u8>)
fn put(&self, _fp: PipelineFingerprint, _artifact: Vec<u8>)
Insert a pre-compiled artifact. Implementations may dedupe
or evict per their own policy.
Source§fn get_arc(&self, fp: &PipelineFingerprint) -> Option<Arc<Vec<u8>>>
fn get_arc(&self, fp: &PipelineFingerprint) -> Option<Arc<Vec<u8>>>
V7-PERF-009: zero-clone hot-path lookup. Returns the cached artifact as
an
Arc<Vec<u8>> so multiple consumers share the underlying allocation.
Default impl wraps get; in-memory and layered caches override this to
return their internal Arc directly.Source§fn metrics(&self) -> PipelineCacheMetrics
fn metrics(&self) -> PipelineCacheMetrics
Snapshot cache instrumentation for latency, throughput, and eviction
gates. Backends that do not maintain counters return zeros.
Auto Trait Implementations§
impl Freeze for RemoteCache
impl !RefUnwindSafe for RemoteCache
impl Send for RemoteCache
impl Sync for RemoteCache
impl Unpin for RemoteCache
impl UnsafeUnpin for RemoteCache
impl !UnwindSafe for RemoteCache
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