Documentation
¶
Index ¶
- func LoadConfigFromStoreJSON[T any](ctx context.Context, store microconfig.Store, ...) (T, error)
- func NewStoreFromBootstrap(request microconfig.StoreBootstrapRequest, ...) (microconfig.Store, error)
- type Conf
- type StoreInstance
- func (s *StoreInstance) Delete(ctx context.Context, key microconfig.Key) error
- func (s *StoreInstance) Get(ctx context.Context, key microconfig.Key) (*microconfig.Item, error)
- func (s *StoreInstance) GetByQuery(ctx context.Context, query microconfig.Query) (*microconfig.Item, error)
- func (s *StoreInstance) GetMeta(ctx context.Context, key microconfig.Key) (*microconfig.Meta, error)
- func (s *StoreInstance) GetVersion(ctx context.Context, key microconfig.Key, version string) (*microconfig.Item, error)
- func (s *StoreInstance) ListVersions(ctx context.Context, key microconfig.Key, limit int) ([]string, error)
- func (s *StoreInstance) Put(ctx context.Context, key microconfig.Key, item *microconfig.Item) error
- func (s *StoreInstance) PutMeta(ctx context.Context, key microconfig.Key, meta *microconfig.Meta) error
- func (s *StoreInstance) PutVersion(ctx context.Context, key microconfig.Key, item *microconfig.Item) (string, error)
- func (s *StoreInstance) Unwatch(key microconfig.Key)
- func (s *StoreInstance) Watch(ctx context.Context, key microconfig.Key) (<-chan microconfig.WatchEvent, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LoadConfigFromStoreJSON ¶ added in v0.0.2
func LoadConfigFromStoreJSON[T any](ctx context.Context, store microconfig.Store, request microconfig.StoreReadRequest, payloadDecoder microconfig.PayloadDecoder) (T, error)
func NewStoreFromBootstrap ¶ added in v0.0.2
func NewStoreFromBootstrap(request microconfig.StoreBootstrapRequest, localLoader microconfig.LocalConfigLoader, remoteGetter microconfig.RemoteConfigGetter, payloadDecoder microconfig.PayloadDecoder, conf *Conf, opts ...microconfig.Option) (microconfig.Store, error)
Types ¶
type Conf ¶
type Conf struct {
// Namespace 表示配置存储根路径,如 /config-center。
Namespace string `json:"namespace"`
// Timeout 表示单次 Consul 读写超时时间。
Timeout time.Duration `json:"timeout"`
// Retry 表示失败重试次数预留字段。
Retry uint32 `json:"retry"`
// WatchBuffer 表示 watch 事件缓冲区大小。
WatchBuffer int `json:"watch_buffer"`
// WatchWaitTime 表示 blocking query 的最长等待时间。
WatchWaitTime time.Duration `json:"watch_wait_time"`
}
Conf 定义 go-consul/config 的可选初始化参数。
func (*Conf) BuildOptions ¶
func (c *Conf) BuildOptions(opts ...microconfig.Option) *microconfig.Options
BuildOptions 把 Conf 转换为统一的 micro config options。
type StoreInstance ¶
type StoreInstance struct {
// contains filtered or unexported fields
}
StoreInstance 是基于 Consul KV 的统一配置存储实现。
func NewStore ¶
func NewStore(client *api.Client, conf *Conf, opts ...microconfig.Option) (*StoreInstance, error)
NewStore 基于 Consul 客户端创建配置存储实例。
func (*StoreInstance) Delete ¶
func (s *StoreInstance) Delete(ctx context.Context, key microconfig.Key) error
Delete 删除当前配置。
func (*StoreInstance) Get ¶
func (s *StoreInstance) Get(ctx context.Context, key microconfig.Key) (*microconfig.Item, error)
Get 按配置键读取当前生效配置。
func (*StoreInstance) GetByQuery ¶
func (s *StoreInstance) GetByQuery(ctx context.Context, query microconfig.Query) (*microconfig.Item, error)
GetByQuery 按运行时上下文读取配置。
func (*StoreInstance) GetMeta ¶
func (s *StoreInstance) GetMeta(ctx context.Context, key microconfig.Key) (*microconfig.Meta, error)
GetMeta 读取配置元信息。
func (*StoreInstance) GetVersion ¶
func (s *StoreInstance) GetVersion(ctx context.Context, key microconfig.Key, version string) (*microconfig.Item, error)
GetVersion 读取指定版本快照。
func (*StoreInstance) ListVersions ¶
func (s *StoreInstance) ListVersions(ctx context.Context, key microconfig.Key, limit int) ([]string, error)
ListVersions 列出版本号列表。
func (*StoreInstance) Put ¶
func (s *StoreInstance) Put(ctx context.Context, key microconfig.Key, item *microconfig.Item) error
Put 写入当前生效配置。
func (*StoreInstance) PutMeta ¶
func (s *StoreInstance) PutMeta(ctx context.Context, key microconfig.Key, meta *microconfig.Meta) error
PutMeta 写入配置元信息。
func (*StoreInstance) PutVersion ¶
func (s *StoreInstance) PutVersion(ctx context.Context, key microconfig.Key, item *microconfig.Item) (string, error)
PutVersion 写入版本快照并返回版本号。
func (*StoreInstance) Unwatch ¶
func (s *StoreInstance) Unwatch(key microconfig.Key)
Unwatch 取消指定配置键的监听。
func (*StoreInstance) Watch ¶
func (s *StoreInstance) Watch(ctx context.Context, key microconfig.Key) (<-chan microconfig.WatchEvent, error)
Watch 监听指定配置键的变更事件。
Click to show internal directories.
Click to hide internal directories.