Help us shape the future of Go! Take the 2026 Go Developer Survey

cache

package
v0.19.2 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2026 License: MIT Imports: 1 Imported by: 0

Documentation

Overview

Package cache 是 data 门面子包:缓存域——接口(Cache/CacheAside/BatchGetter/SourceFunc)+ 本地缓存(LocalCache/SingleFlightCache)+ 缓存键构造 + Checker。实现在 pkg/cache。

re-export 自 github.com/oekit/pkg/cache:类型为泛型 type alias(与源包**完全同一类型**, 双向赋值互通);非泛型函数/变量经 var 引用同一函数值。源包新增导出符号时 本壳需同步(门面跟版税,data 门面化决策已接受)。

Index

Constants

This section is empty.

Variables

View Source
var HashKey = src.HashKey
View Source
var Key = src.Key
View Source
var NewChecker = src.NewChecker
View Source
var TenantKey = src.TenantKey
View Source
var UserKey = src.UserKey
View Source
var WithClock = src.WithClock

Functions

This section is empty.

Types

type BatchGetter added in v0.8.1

type BatchGetter[T any] = src.BatchGetter[T]

type Cache

type Cache[T any] = src.Cache[T]

type CacheAside

type CacheAside[T any] = src.CacheAside[T]

type Checker added in v0.5.0

type Checker = src.Checker

type EvictPolicy added in v0.15.0

type EvictPolicy = src.EvictPolicy

EvictPolicy 淘汰策略(pkg v0.16.0,pkg#25)——LocalConfig.EvictPolicy 取值。

type HitGetter added in v0.15.0

type HitGetter[T any] = src.HitGetter[T]

HitGetter 可选能力接口:取值时区分「未命中」与「命中但值为 nil」(pkg v0.16.0,pkg#25)。

type LocalCache

type LocalCache[T any] = src.LocalCache[T]

func NewLocalCache

func NewLocalCache[T any](cfg LocalConfig[T]) *LocalCache[T]

NewLocalCache 创建本地缓存(泛型函数无法 var re-export,经包装转发)。

type LocalConfig

type LocalConfig[T any] = src.LocalConfig[T]

type Option added in v0.5.0

type Option = src.Option

type PeekGetter added in v0.18.0

type PeekGetter[T any] = src.PeekGetter[T]

PeekGetter 可选能力接口:非删除式读取——读到过期条目只算不命中、不删除它 (pkg v0.23.0,pkg#72)。stale-if-error 兜底需要那份过期真值留在表内; 装饰器的前置检查若走 Get(惰性删除路径)会把它删掉 ⇒ 兜底失效。

type SingleFlightCache

type SingleFlightCache[T any] = src.SingleFlightCache[T]

func NewSingleFlightCache

func NewSingleFlightCache[T any](inner CacheAside[T]) *SingleFlightCache[T]

NewSingleFlightCache 创建并发回源合并装饰器。

type SourceFunc

type SourceFunc[T any] = src.SourceFunc[T]

type SourceFuncWithTTL added in v0.8.2

type SourceFuncWithTTL[T any] = src.SourceFuncWithTTL[T]

SourceFuncWithTTL 携带动态回填 TTL 的数据获取函数(pkg v0.14.0,pkg#11)。

type SourceInjector added in v0.19.0

type SourceInjector[T any] = src.SourceInjector[T]

SourceInjector 可选能力接口:按调用注入回源函数(pkg v0.24.0,pkg#77)—— 回源依赖 key / 依赖调用上下文的缓存(token/凭据/租户级)不必在缓存外再包 一层 key→source 注册表,且单飞语义不变。

type Stats added in v0.19.0

type Stats = src.Stats

Stats 观测计数快照(pkg v0.24.0,pkg#76)——命中/未命中/容量淘汰/TTL 过期 回收计数。要暴露缓存指标的仓不必自写一份带计数的 TTL 缓存。

type StatsProvider added in v0.19.0

type StatsProvider = src.StatsProvider

StatsProvider 可选能力接口:暴露缓存的观测计数快照(pkg v0.24.0,pkg#76)。

type Sweeper added in v0.15.0

type Sweeper = src.Sweeper

Sweeper 可选能力接口:手动清扫过期条目(pkg v0.16.0,pkg#25)。

Jump to

Keyboard shortcuts

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