Documentation ¶
Index ¶
Constants ¶
View Source
const ( CsNone = "none" CsFull = "full" CsShrink = "shrink" CsExtend = "extend" )
--- Checksum ---
View Source
const SlowRequest = time.Second * time.Duration(10)
Variables ¶
This section is empty.
Functions ¶
func NewPageReader ¶
func NewPageReader(p *Page) *pageReader
Types ¶
type CacheManager ¶
type CacheManager interface {
// contains filtered or unexported methods
}
type ChunkStore ¶
type ChunkStore interface { NewReader(id uint64, length int) Reader NewWriter(id uint64) Writer Remove(id uint64, length int) error FillCache(id uint64, length uint32) error EvictCache(id uint64, length uint32) error CheckCache(id uint64, length uint32) (uint64, error) UsedMemory() int64 UpdateLimit(upload, download int64) }
func NewCachedStore ¶
func NewCachedStore(storage object.ObjectStorage, config Config, reg prometheus.Registerer) ChunkStore
NewCachedStore create a cached store.
type Config ¶
type Config struct { CacheDir string CacheMode os.FileMode CacheSize uint64 CacheChecksum string CacheEviction string CacheScanInterval time.Duration CacheExpire time.Duration FreeSpace float32 AutoCreate bool Compress string MaxUpload int MaxStageWrite int MaxRetries int UploadLimit int64 // bytes per second DownloadLimit int64 // bytes per second Writeback bool UploadDelay time.Duration UploadHours string HashPrefix bool BlockSize int GetTimeout time.Duration PutTimeout time.Duration CacheFullBlock bool BufferSize uint64 Readahead int Prefetch int }
Config contains options for cachedStore
type Controller ¶
type Page ¶
type Page struct { Data []byte // contains filtered or unexported fields }
Page is a page with refcount
func NewOffPage ¶
Click to show internal directories.
Click to hide internal directories.