Apollo配置中心学习
官方https://www.apolloconfig.com/#/zh/README
如果是本机部署
首先是docker 部署
git clone https://github.com/apolloconfig/apollo-quick-start
如果是centos8 需要解压
在当前目录docker-compose up
账号密码 apollo admin
普通应用
Web应用程序
带有main函数的程序
首先添加依赖
go get -u github.com/apolloconfig/agollo/v4@latest
拿到配置的端口应该是8080
我认为的就是很多东西,就不需要在项目中,写配置文件和IP地址了,就可以直接在Apollo中直接发布就行了。
我现在毕竟头疼的就是
几个地址
服务中心地址,consul服务中心
服务检查地址
tcp
udp
rpc
http
简单的配置发现
func ApolloClient() {
c := &config.AppConfig{
AppID: "1000001",
Cluster: "dev",
IP: "http://localhost:8080/",
NamespaceName: "first",
IsBackupConfig: true,
Secret: "32669aad1fd945b8b3d86d04369a407e",
}
var client, _ = agollo.StartWithConfig(func() (*config.AppConfig, error) {
return c, nil
})
log.Println("初始化Apollo配置成功")
var cache = client.GetConfigCache(c.NamespaceName)
var value, errGet = cache.Get("redisServer")
if errGet != nil {
log.Println(errGet)
} else {
log.Println("this is apollo value")
log.Println(value)
}
}
回来的时候是interface{},需要自己分析。
然后可以自己封装一个。把自己想要的参数和配置结合起来
还差的用法
自定义日志组件
自定义缓存组件
监听变更事件
docker run -d -p 3306:3306 --name=sister_mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/config:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD= -e TZ=Asia/Shanghai mysql:8.0.21
浙公网安备 33010602011771号