sisterofdc

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

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

posted on 2023-02-16 12:02  SistersOfDC  阅读(65)  评论(0)    收藏  举报