基本.net core 开发的轻量级配置中心 - AgileConfig 基本使用

一、AgileConfig

AgileConfig是一个基于.net core开发的轻量级配置中心。AgileConfig秉承轻量化的特点,部署简单、配置简单、使用简单、学习简单,它只提取了必要的一些功能,并没有像Apollo那样复杂且庞大。但是它的功能也已经足够替换webconfig,appsettings.json这些文件了。有关配置中心的基础概念可以看【微服务配置中心的基本概念_胖太乙的博客-CSDN博客

文档地址

Git地址:https://github.com/kklldog/AgileConfig

Gitee地址:https://gitee.com/kklldog/AgileConfig

测试源码下载

https://download.csdn.net/download/IT_rookie_newbie/85452896https://download.csdn.net/download/IT_rookie_newbie/85452896

 特点

  1. 部署简单,最少只需要一个数据节点,支持docker部署

  2. 支持多节点分布式部署来保证高可用

  3. 配置支持按应用隔离,应用内配置支持分组隔离

  4. 支持多环境

  5. 应用支持继承,可以把公共配置提取到一个应用然后其它应用继承它

  6. 使用长连接技术,配置信息实时推送至客户端

  7. 支持IConfiguration,IOptions模式读取配置,原程序几乎可以不用改造

  8. 配置修改支持版本记录,随时回滚配置

  9. 如果所有节点都故障,客户端支持从本地缓存读取配置

  10. 支持Restful API维护配置

数据库支持

目前支持 sqlserver,mysql,sqlite, PostgreSql,Oracle 五种数据库

二、环境搭建

1、前置环境准备

2、安装数据库 

AgileConfig 需要有一个数据库环境, 并且需要将库建好。所以接下来我们就需要使用Docker 拉取一个mysql 数据库, 并且运行起来。

# 拉取mysql 数据库并运行
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。

3、安装AgileConfig

docker run \
--name agile_config \
-e adminConsole=true \
-e db:provider=mysql \
-e db:conn="Data Source=@ip;Database=AgileConfigDB;User ID=root;Password=123456;pooling=true;port=3306;sslmode=none;CharSet=utf8;allowPublicKeyRetrieval=true;" \
-p 5000:5000 \
-v /etc/localtime:/etc/localtime \
-d kklldog/agile_config:latest
  1. adminConsole 配置程序是否为管理控制台。如果为true则启用控制台功能,访问该实例会出现管理界面。

  2. db:provider 配置程序的数据库类型。目前程序支持:sqlserver,mysql,sqlite, PostgreSql,Oracle 五种数据库。

  3. db:conn 配置数据库连接串

运行完毕之后, 就可以使用 http:// ip:5000 的方式去访问控制台了。

三、测试 

1、需要再项目用引用 nuget包,AgileConfig.Client

2、在appsettings.json中增加配置,多个节点使用逗号分隔

"AgileConfig": {
    "appId": "WCS",
    "secret": "123456",
    "nodes": "http://XXXX:5000,http://XXXX:5000,http://XXXX:5000" 
}

 3、在 Program.cs 中增加节点信息配置 “config.AddAgileConfig();

4、读取配置中心服务器上的配置文件

四、测试单点故障

1、将其中一台服务器 “宕机” , 测试及配置是否依旧可以访问。

2、将存有数据库的节点宕机,测试是否依旧可以访问。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胖太乙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值