缓存组件采用了接口化设计,提供了 Adapter 接口,任何实现了 Adapter 接口的对象均可注册到缓存管理对象中,使得开发者可以对缓存管理对象进行灵活的自定义实现和扩展。

接口定义

Adapter 接口定义如下:

https://pkg.go.dev/github.com/gogf/gf/v2/os/gcache#Adapter

注册接口实现

通过该方法将实现的 adapter 应用到对应的 Cache 对象上:

  1. // SetAdapter changes the adapter for this cache.
  2. // Be very note that, this setting function is not concurrent-safe, which means you should not call
  3. // this setting function concurrently in multiple goroutines.
  4. func (c *Cache) SetAdapter(adapter Adapter)

具体示例请参考 缓存管理-Redis缓存 章节。

获取接口实现

通过该方法获取当前注册的 adapter 接口实现对象上:

  1. // GetAdapter returns the adapter that is set in current Cache.
  2. func (c *Cache) GetAdapter() Adapter

具体示例请参考 缓存管理-Redis缓存 章节。