cache

package
v2.1.0+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 11, 2015 License: Apache-2.0 Imports: 5 Imported by: 1,502

Documentation

Overview

Package cache provides facilities to speed up access to the storage backend.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckBlobDescriptorCache

func CheckBlobDescriptorCache(t *testing.T, provider BlobDescriptorCacheProvider)

CheckBlobDescriptorCache takes a cache implementation through a common set of operations. If adding new tests, please add them here so new implementations get the benefit. This should be used for unit tests.

func NewCachedBlobStatter

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

type Metrics struct {
	Requests uint64
	Hits     uint64
	Misses   uint64
}

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.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL