适用于golang 的 配置中心

xincao9 · · 3708 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

# configurator 地址:[https://github.com/xincao9/configurator](https://github.com/xincao9/configurator) 配置器的特点: 1. 完整的配置管理功能 2. 多环境,多业务组,多服务,多版本 的配置分类 ![architectures](https://raw.githubusercontent.com/xincao9/configurator/master/configurator.png) ## 安装中间件 **安装 [dkv](https://github.com/xincao9/dkv)** ``` docker pull xincao9/dkv docker run -d -p 9090:9090 -p 6380:6380 dkv:latest ``` **创建服务配置** >接口 ``` curl -X PUT -H 'content-type:application/json' 'http://localhost:9090/kv' -d '{"k":"configurator|test|cbs|user-service|1.0", "v":"{\"redis\":{\"host\":\"localhost\",\"port\":\"6379\"}}"}' ``` >推荐使用 [configurator-ui](https://github.com/xincao9/configurator/tree/master/api) 系统管理配置 ## 如何使用SDK **获取SDK** ``` go get github.com/xincao9/configurator ``` **设置系统环境变量** ``` export env="test" // 环境 export group="cbs" // 业务组 export project="user-service" // 项目 export version="1.0" // 版本 export master="localhost:9090" // dkv 的master地址 export slaves="" // dkv 的slaves地址,host1:port1,host2:port2 ``` **读取属性** ``` configurator.C.Get("redis.host") configurator.C.Get("redis.port") ``` **设置管理端口** ``` http.HandleFunc("/config", configurator.AllSettings) http.ListenAndServe(":8080", nil) ``` ``` r := gin.Default() r.GET("/config", func(c *gin.Context) { c.JSON(http.StatusOK, configurator.C.AllSettings()) }) ``` **查看运行时的配置** ``` curl -X GET 'http://localhost:8080/config' ``` **知识** * [dkv](https://github.com/xincao9/dkv) * [viper](https://github.com/spf13/viper)

有疑问加站长微信联系(非本文作者))

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3708 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传