ETCD后台服务
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

28 lines
649 B

package etcdsdk
import (
"etcd/etcdsdk/etcdv2"
"etcd/etcdsdk/etcdv3"
"etcd/etcdsdk/model"
)
/*
golang 操作etcd sdk,可以兼容v2和v3版本etcd api
*/
// NewClientByConfig 创建一个etcd客户端
// 可重复调用,不会重复和etcd建立连接
func NewClientByConfig(cfgObj *model.Config) (client model.EtcdSdk, err error) {
if cfgObj == nil {
err = model.ERR_CONFIG_ISNIL
return
}
if cfgObj.Version == model.ETCD_VERSION_V2 {
client, err = etcdv2.NewClient(cfgObj)
} else if cfgObj.Version == model.ETCD_VERSION_V3 {
client, err = etcdv3.NewClient(cfgObj)
} else {
err = model.ERR_UNSUPPORTED_VERSION
}
return
}