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 ¶
var HashKey = src.HashKey
var Key = src.Key
var NewChecker = src.NewChecker
var TenantKey = src.TenantKey
var UserKey = src.UserKey
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 CacheAside ¶
type CacheAside[T any] = src.CacheAside[T]
type EvictPolicy ¶ added in v0.15.0
type EvictPolicy = src.EvictPolicy
EvictPolicy 淘汰策略(pkg v0.16.0,pkg#25)——LocalConfig.EvictPolicy 取值。
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 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
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)。