Documentation ¶
Overview ¶
Package cache provides facilities to speed up access to the storage backend.
Index ¶
- func NewCachedBlobStatter(cache distribution.BlobDescriptorService, ...) distribution.BlobDescriptorService
- func NewCachedBlobStatterWithMetrics(cache distribution.BlobDescriptorService, ...) distribution.BlobStatter
- func ValidateDescriptor(desc distribution.Descriptor) error
- type BlobDescriptorCacheProvider
- type Metrics
- type MetricsTracker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewCachedBlobStatter ¶
func NewCachedBlobStatter(cache distribution.BlobDescriptorService, backend distribution.BlobDescriptorService) distribution.BlobDescriptorService
NewCachedBlobStatter creates a new statter which prefers a cache and falls back to a backend.
func NewCachedBlobStatterWithMetrics ¶
func NewCachedBlobStatterWithMetrics(cache distribution.BlobDescriptorService, backend distribution.BlobDescriptorService, tracker MetricsTracker) distribution.BlobStatter
NewCachedBlobStatterWithMetrics creates a new statter which prefers a cache and falls back to a backend. Hits and misses will send to the tracker.
func ValidateDescriptor ¶
func ValidateDescriptor(desc distribution.Descriptor) error
ValidateDescriptor provides a helper function to ensure that caches have common criteria for admitting descriptors.
Types ¶
type BlobDescriptorCacheProvider ¶
type BlobDescriptorCacheProvider interface { distribution.BlobDescriptorService RepositoryScoped(repo string) (distribution.BlobDescriptorService, error) }
BlobDescriptorCacheProvider provides repository scoped BlobDescriptorService cache instances and a global descriptor cache.
type Metrics ¶
Metrics is used to hold metric counters related to the number of times a cache was hit or missed.
type MetricsTracker ¶
type MetricsTracker interface { Hit() Miss() Metrics() Metrics }
MetricsTracker represents a metric tracker which simply counts the number of hits and misses.