方便Golang接入配置中心框架 Apollo 所开发的Golang版本客户端。
如果还没有安装Go开发环境,请参考以下文档Getting Started ,安装完成后,请执行以下命令:
gopm get github.com/cihub/seelog -v -g
gopm get github.com/coocood/freecache -v -g
gopm get github.com/zouyx/agollo -v -g
或者
go get -u github.com/cihub/seelog
go get -u github.com/coocood/freecache
go get -u github.com/zouyx/agollo
请注意: 最好使用Go 1.8进行开发
- 实时同步配置
- 灰度配置
- 客户端容灾
- 异步启动agollo
场景:启动程序不依赖加载Apollo的配置。
func main() {
go agollo.Start()
}
- 同步启动agollo(v1.2.0+)
场景:启动程序依赖加载Apollo的配置。例:初始化程序基础配置。
func main() {
agollo.Start()
}
- 启动agollo - 自定义logger控件(感谢 @Adol1111 提供)
func main() {
go agollo.StartWithLogger(loggerInterface)
}
- 监听变更事件(阻塞)
func main() {
event := agollo.ListenChangeEvent()
changeEvent := <-event
bytes, _ := json.Marshal(changeEvent)
fmt.Println("event:", string(bytes))
}
-
获取Apollo的配置
- String
agollo.GetStringValue(Key,DefaultValue)
- Int
agollo.GetIntValue(Key,DefaultValue)
- Float
agollo.GetFloatValue(Key,DefaultValue)
- Bool
agollo.GetBoolValue(Key,DefaultValue)
后续可支持更多类型
如果你觉得该工具还不错或者有问题,一定要让我知道,可以发邮件或者留言。
- Source Code: https://github.com/zouyx/agollo/
- Issue Tracker: https://github.com/zouyx/agollo/issues
The project is licensed under the Apache 2 license.
Apollo : https://github.com/ctripcorp/apollo