# README
功能
cluster实例管理模块,通过manager统一管理
概念
cluster(集群): 对influxdb-proxy的使用者隐藏的概念,主要功能为多写和负载均衡,使用者的每一次读写请求都会被influxdb-proxy分析成为针对cluster的读写,而使用者自身体感为向单个influxdb实例进行读写
目录
routecluster 文件夹 存放cluster目前唯一的实现方案 define.go 存放接口定义 errors.go 存放错误定义 factory.go 存放cluster工厂方法,所有cluster实例通过该工厂方法取出 hook.go 存放一些触发逻辑 manager.go 存放manager的具体实现,manager负责管理全局cluster实例列表 struct.go 存放一些实际类型,通常为具体参数类型 utils.go 存放一些工具方法
# Packages
No description provided by the author
# Functions
ConvertListToMap 将列表转换为map,所有的列表项都会被转换为key,value为true.
GetClusterFunc 获取指定类型的cluster.
NewQueryParams :.
NewResponse :.
NewWriteParams :.
RegisterCluster 注册指定类型的cluster.
# Variables
Backup :.
:.
:.
:.
:.
ErrDBNotMatch = errors.New("DB route doesn't match") ErrNotAvailableBackend = errors.New("no available backend").
ErrWriteFail = errors.New("some backends write or backup fail") ErrMissingDB = errors.New("missing db in url params") ErrMissingSQL = errors.New("missing sql in url params").
:.
:.
:.
GetCluster 获取名称对应的集群.
Init 初始化.
Print :.
Recover :.
Refresh :.
Reload 重载backend,会清空当前所有列表然后初始化.
# Structs
Info 从consul获取的集群信息.
Manager :.
QueryParams cluster的查询请求参数.
Response cluster的返回信息.
WriteParams cluster的写入参数.
# Interfaces
Cluster :.
# Type aliases
NewClusterFunc Backend生成方法,生成一个指定类型的Backend.